9

我是一名学习 php & mysql 开发的学生。我已经在我的计算机内设置了一个私人实验室 (VM) 来测试和了解 sql 注入的工作原理。当事情变得更难时,我使用 sqlmap 进行利用,然后使用详细模式和通过wireshark 捕获数据包来研究它对我的测试应用程序发出的请求。我遇到了一个小问题,那就是在 URL 中指定要测试的 sqlmap 的参数。

http://localhost/vuln/test.php?feature=music&song=1

我想让 sqlmap 扫描参数歌曲所以我尝试了这些解决方案

-u http://localhost/vuln/test.php?feature=music&song=1 --skip feature
-u http://localhost/vuln/test.php? --data="feature=music&song=1" -p song

通过添加和删除引号和等号尝试了不同的变体,无效。我什至尝试将 --risk 设置为 --level 最大值,但仍然无法获取最后一个参数。

如果专家能帮助我解决这个问题,我将非常感激。谢谢你。

4

5 回答 5

21

p 选项可以通过以下方式使用

-u "http://localhost/vuln/test.php?feature=music&song=1" -p song

于 2013-04-28T19:56:35.813 回答
5

我还注意到您可以使用以下方法扫描多个参数:

-u "http://localhost/vuln/test.php?feature=music&song=1" -p 'song,feature'

这将扫描song参数,然后是feature参数。如果sqlmap找到易受攻击的参数,它会询问您是否要继续使用其他参数。

于 2017-07-27T11:28:22.573 回答
4

您可以简单地将 * 添加到要扫描的参数值。你试过那个吗?

于 2013-11-17T13:45:35.983 回答
2

我也遇到了这个问题。我认为 sqlmap 注入了第一个参数。如果您键入:

-u http://localhost/vuln/test.php?feature=music&song=1

sqlmap 将注入 'feature' 参数。要使其注入“歌曲”参数,您需要重新排序参数,如下所示:

-u http://localhost/vuln/test.php?song=1&feature=music

不要忘记在每个参数之间添加“&”。它对我有用。

于 2013-04-26T09:48:09.437 回答
0

我已经触发了这类问题。您可以简单地跳过“功能”参数。例如 -u http:// localhost/vuln/test.php?feature=music&song=1 --skip=feature 然后它肯定会开始测试'song'参数。

于 2014-02-07T04:24:55.110 回答