OWASP 的 ZAP 和 Fuzz 能力

Posted

技术标签:

【中文标题】OWASP 的 ZAP 和 Fuzz 能力【英文标题】:OWASP's ZAP and the Fuzz ability 【发布时间】:2014-01-17 16:11:00 【问题描述】:

我的场景:

我导航到登录页面。 我输入了一个密码错误的已知用户名。 ZAP 没有任何问题。

我选择 POST 到登录页面。 我找到包含用户名和密码的行。密码: ctl00%24ContentPlaceHolder1%24cpLoginAspx%24ctl00%24LoginControl1%24LTLogin%24Password=12345&

我突出显示 12345 并右键单击选择 Fuzz。 我已经为测试帐户输入了一个包含正确密码的自定义列表,然后我选择了它。

当我这样做时,它会按照我的预期在列表中运行。将 12345 更改为列表中的各种选项。

但是,当我知道这个词是正确的密码时。提醒我它是正确的并没有什么不同。在这种情况下,密码是 Password5。我希望它会反映或显示它被定向到新页面。但是,对于测试用户来说不正确的“密码”会发生这种情况。

我在 Fuzzer 选项卡中看到了这个:

【问题讨论】:

【参考方案1】:

好的,我认为您提出的第一点是 ZAP 没有发现您尝试了无效密码。这不是安全风险 - 您提供的密码错误,应用程序没有让您进入。一切正常。

ZAP 只会通过主动或被动扫描器提醒您存在漏洞。 模糊器用于手动测试。如果我们想出一种自动检测漏洞的方法,那么我们会将其放入主动或被动扫描器中:) 所以你必须解释模糊器的结果,而不是指望 ZAP 为你做这些。 在任何情况下,成功登录都不是漏洞(在 ZAP 术语中)。

fuzzer 将告诉您的是您提供的字符串是否包含在响应中(这在查找 XSS 时很有用)、响应代码、所用时间和响应长度。

登录时,我预计响应长度会显着不同,因此一种选择是寻找长度与其他长度显着不同的响应。

然而,最简单的选择可能是搜索模糊结果。 为此,请转到“搜索”选项卡,在下拉菜单中选择“模糊结果”,然后搜索您知道将在您成功登录时显示的字符串,或者反向搜索您知道将显示的字符串登录失败时。

这有帮助吗?

请注意,我们在 ZAP wiki 上确实有大量信息,包括视频、常见问题解答等等:http://code.google.com/p/zaproxy/wiki/Introduction

顺便说一句,我们确实有一个 ZAP 用户组专门用于解决这类问题:http://groups.google.com/group/zaproxy-users 您也可以通过 ZAP 的“在线/ZAP 用户组”菜单项访问它。 我尽量关注论坛,但论坛太多了,有些问题肯定会漏掉。

如果有人能建议我如何说服人们使用 ZAP 用户组(所有 ZAP 开发人员都订阅)而不是像这样的通用论坛(这对其他问题非常有用),那么我将非常感激:)

西蒙(ZAP 项目负责人)

【讨论】:

以上是关于OWASP 的 ZAP 和 Fuzz 能力的主要内容,如果未能解决你的问题,请参考以下文章

尝试扫描时 OWASP/ZAP 悬空

owasp 十大漏洞中的 ZAP 警报分类

我们如何整合 Owasp ZAP 和 Cypress?

OWASP ZAP API 根元素丢失错误

SonarQube 5.6.6:错误 OWASP ZAP 和依赖检查插件

CSRF 和 OWASP ZAP