SQL盲注学习-时间型

  本次对时间型盲注进行学习,还是的使用sqli-labs环境。

  首先看一下时间型盲注需要用到的:

  1、if()函数   if(a,b,c)

  如果a为真则执行b,否则执行c。如图,由于1=1为真所以执行第二个参数2;

   

  而当1=11是结果为假,所以执行了第三个参数3;

 

  2、sleep()      sleep函数可以让此语句运行N秒钟

  

  可以看到这句代码执行了5秒钟

  接下来查询1=1如果为真的话执行1,为假则执行5秒;

 

  由于1=1为真所以执行查询1,用时0秒,几乎感觉不到延迟;1=2时,则执行第三个字段结果,查询5秒,可以感觉明显延迟。

 

  接下来使用sleep()函数判断以下sqli-labs当前数据库的首字母是否为a,为真的话就返回1(由于页面回显一样所以页面会提示You are in ......),为假的话执行查询5秒 

  http://localhost:8088/sqli-labs/Less-5/?id=1' and if(substr((select database()),1,1)='a',1,sleep(5)) --+

 

  感觉页面明显延迟,5秒后页面显示为空;不断尝试查询直到页面没有延迟显示You are in ......,就找到了正确字符s,

 

  后面步骤都比较相似,就不再重复了。

猜你喜欢

转载自www.cnblogs.com/hai-long/p/11883002.html