gpt4 book ai didi

mysql - sqlmap 中基于 bool 和时间相关的 SQL 注入(inject)的组合

转载 作者:行者123 更新时间:2023-11-29 21:50:20 32 4
gpt4 key购买 nike

我遇到了一个基于 bool 值的 SQL 盲注漏洞,但我从服务器得到的响应是基于时间的。换句话说,如果条件为“假”,网站将返回“错误”语句。如果条件为“真”,则页面不会加载。

例如

http://testingzone.com/id=123+OR+1=2

返回“错误 ID 无效”

http://testingzone.com/id=123+OR+1=1

不返回任何内容,页面永远加载(我测试了 60 秒没有响应,也没有收到来自浏览器的超时错误)

我能够手动执行攻击,但我有兴趣知道如何在 sqlmap 中执行此类攻击。

sqlmap 无法识别它是可注入(inject)的,但它显示了几个“请求超时错误”。我如何告诉sqlmap当请求超时时意味着条件为真?

[更新]

我有点开始想象为什么需要这么长时间才能响应...当我添加LIMIT 1来查询时,尽管我使用OR 1=,但我收到了错误1 但当我将其设置为 LIMIT 1000000 时,我没有得到任何响应,并且页面不断加载(因为执行查询需要花费很多时间)

换句话说,它总是显示错误,但查询执行时间指示查询是否已成功执行。

最佳答案

我想出了如何自动化它。我可以通过添加类似的条件来简单地使其成为基于时间的sql注入(inject) 或 1= sleep (5) 限制 1在这种情况下,它仍然会打印错误,但网站将需要 5 秒才能响应。[更新]我设法使用以下命令在 sqlmap 中应用攻击向量

python sqlmap.py -u "http://testingzone.com/page.php?id=1*" --suffix "LIMIT 1 --" --dbms "mysql" --cookies "website cookies"

sqlmap 成功识别出它是基于时间的 sql 注入(inject)漏洞 url

关于mysql - sqlmap 中基于 bool 和时间相关的 SQL 注入(inject)的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33708851/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com