首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在SQLmap之前需要登录

在SQLmap之前需要登录
EN

Security用户
提问于 2014-09-03 15:16:11
回答 3查看 23.9K关注 0票数 5

我有一个多部分表单数据,其中我怀疑其中一个多部分表单字段(参数名为htmlbevt_id)易受SQLi攻击。为了进行同样的测试,我使用Burp捕获了请求,并将其保存在一个文件中,比如myFile。现在在SQLMap上运行以下命令:

sqlmap -r /root/Desktop/myFile -p htmlbevt_id

我收到以下错误消息:

无法连接到目标URL或代理。sqlmap将重试请求。

我是不是遗漏了什么?

在运行上述查询之前,是否需要登录应用程序?如果是这样,我如何使SQL识别登录?我的意思是,我需要从浏览器登录到应用程序,然后运行上面的查询(在这种情况下,我不确定SQLMap如何确切地知道我已经登录到应用程序中了),还是有不同的方法来做到这一点?

通过进一步的cookie搜索,我了解到--cookie需要用于在SQLmap中重放会话身份验证。另外,由于请求是一篇文章,一些论坛建议使用--数据,我也是这样做的。然而,到目前为止,所有这些都没有用处。我试着用-v 6进行调试,看看出了什么问题。SQLmap报告“不是有效的WebScarab日志数据”。不确定这是否是错误的原因。

好了,很多问题都解决了。因此,现在在CO2扩展的帮助下,我能够通过SQLMap.

重放多部分POST请求的整个流量以及所有会话cookies。

但现在我面临着一个不同的问题。当我在浏览器中检查应用程序时,会话仍然是活动的。但是,当使用SQLi扫描SQLMap可注入的可疑参数(我将详细级别设置为3)时,我发现服务器正在返回HTTP400Session超时时间。有什么可能出错,在SQLMap进行扫描时是否有办法保持会话不变?

EN

回答 3

Security用户

发布于 2014-09-04 04:28:04

你能在打嗝时重放请求吗?(发送到Repeater => Go)

如果是这样的话,将其放入SQLMap的简单方法是使用CO2扩展,该扩展在右键菜单中添加“发送到SQLMap”,这将使您可以使用命令行将所有cookies和请求中的任何数据提供给SQLMap。

票数 3
EN

Security用户

发布于 2014-09-03 17:53:29

看起来您要做的是在静态文本文件上运行SQLmap。请求文件旨在捕获请求,以便对服务器进行重放。您的命令需要需要测试的代理或URL。

票数 2
EN

Security用户

发布于 2014-09-09 10:40:56

我是从你的岗位上来的。很高兴你接近了这个系统;)

在sqlmap的说法中,级别可能意味着两件事。我是回应您的编辑9月4日12.58。

  • -v (1-6)是详细级别,用于输出sqlmap向屏幕吐出的消息数量。
  • --级别(1-5)是sqli检测到的级别。如果指定的级别大于2,那么sqlmap将尝试注入。级别的增加有时可能会导致HTTP 400错误请求,因为HTTP报头将被操作以检测通过HTTP标头中的值发生的sql注入。这可能就是您获得HTTP 400的原因,但我不确定HTTP 400会话超时是什么意思。

尝试降低级别或忽略-级别切换(让它与其默认的1)尝试调整-风险转换。您实际上设置了详细级别还是检测级别?

票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/66688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档