盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入。盲注一般分为布尔盲注和基于时间的盲注和报错的盲注。本次主要讲解的是基于布尔的盲注。
Length()函数 返回字符串的长度
Substr()截取字符串
Ascii()返回字符的ascii码
sleep(n):将程序挂起一段时间 n为n秒
if(expr1,expr2,expr3):判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句
以上是一些常用的函数;
布尔型:页面只返回True和False两种类型页面。利用页面返回不同,逐个猜解数据
(length(database()))>10
当前数据库database()的长度大于10,返回true页面,否则FALSE页面
时间型:通过页面沉睡时间判断
通过 sleep()函数测试,通过if()和sleep()联合逐个猜解数据
if(ascii(substr(database(),1,1))>100,sleep(10),sleep(2))
如果当前查询的当前数据库ascii(substr(database()),1,1)的第一个字符的ASCII码大于100,ture 沉睡10秒,FALSE 沉睡2秒
布尔型详解:
测试页面: