我有一个spring应用程序,并且正在运行ZAP活动扫描。
我注意到ZAP将修改URL,并添加名为query和value query+AND+1%3D1+--+的附加参数来测试SQL。在我的例子中,它会引发较高的中等SQL注入。
应用程序甚至没有读取参数query,因此确定响应始终是相同的,不管是否有此参数。所以我的问题是
通过添加一个未被应用程序读取的参数并将其作为SQL注入警报来测试SQL注入背后的逻辑是什么?我可以理解在应用程序中读取的参数的值何时被更改,而不是这个值。这在我工作的web应用程序中引发了假阳性SQL注入。
这与我在Stackoverflow中提出的一个问题有关,但还没有找到解决方案。https://stackoverflow.com/questions/51874818/false-positive-sql-injection-by-zap-in-spring-mvc
我希望能在安全论坛上听到一些消息。
发布于 2018-08-17 11:03:35
ZAP正在标记一个可能的SQL注入攻击;它无法知道这不是一个合法的查询,所以它标记它供您手动检查和检查。这就是运行它的关键所在。
在我自己的Spring项目中,也发生了类似的事情:它标记了未使用的路径上可能存在的注入缺陷,并且访问该路径只返回HTTP 404。这个项目的目的是教自己一些基本的漏洞扫描,所以我只是把它写成这样。
发布于 2020-08-06 16:40:55
ZAP很可能仅仅因为响应代码为200而引发警报。它无法确定查询是否被后端读取,因此它给了它媒体的信任。您引用的帖子的答案告诉您如何过滤掉此警报。
https://security.stackexchange.com/questions/191758
复制相似问题