时间盲注小知识

时间盲注小知识

1.时间盲注

代码存在sql注入漏洞,然而页面既不会回显数据,也不会回显错误信息,语句执行后也不提示真假,我们不能通过页面的内容来判断。这里我们可以通过构造语句,通过页面响应的时长,来判断信息,这既是时间盲注

2.时问盲注攻击原理

利用sleep()、benchmark()等函数让mysql执行时间变长经常与if(expr1, expr2, expr3)语句结合使用,通过页面的响应时间来判断条件是否正确。
if(expr1,expr2, expr3)含义是如果expr1是 True,则返回expr2,否则返回expr3。

3.时间型盲注特点

通过时间回显的延迟作为判断payload:1’ and sleep(5)——+有延迟则考虑时间盲注。
利用sleep()或benchmark()函数延长 mysql的执行时问
与if()搭配使用

4.时间盲注常用函数

left (m,n)——从左向右截取字符串m返回其前n位
substr(m,1,1)——取字符串m的左边第一位起,1字长的字符串
ascii(m)——返回字符m的ASCII码
if(str1,str2,str3)——如果str1正确就执行str2,否则执行str3
sleep(m)——使程序暂停m秒
length(m)——返回字符串m的长度
count(column_name)——返回指定列的值的数目

5.时间型盲注payload: if(expr1, expr2 , expr3)语义解析

对expr1进行布尔判断,如果为真,则执行expr2,如果为假,则执行expr3常用payload:

If (length(database())>1,sleep(5),1)

如果数据库名字符长度大于1为真,mysql休眠5秒,如果为假则查询1。而查询1的结果,大约只有几十毫秒,根据Burp Suite中页面的响应时间,可以判断条件是否正确。

6.时间盲注攻击实战

判断数据库名的长度
爆库名
爆表名
爆字段
爆数据

你可能感兴趣的:(漏洞基础小知识,安全,mysql,firefox)