在ZAP工具中添加身份验证以攻击URL

use*_*844 24 authentication owasp zap

如何将身份验证详细信息传递给ZAP工具以扫描网站.请帮我解决问题.

fab*_*ner 36

相当古老的问题,但在这里.

最简单的方法是通过ZAP将浏览器设置为Proxy.在Firefox上你可以去:

选项 - >高级 - >网络 - >设置.

选择Manual Proxy Configuration并使用运行ZAP的计算机的地址(最可能是localhost)和配置的ZAP端口填充HTTP Host.

您可以检查和配置ZAP端口打开ZAP并访问:

工具 - >选项 - >本地代理.

然后打开Web浏览器并登录到您的应用程序.现在转到ZAP,在"站点"选项卡(ZAP左侧)中,选择您的站点,右键单击它并选择:

包含在上下文中 - >默认上下文

现在打开HTTP Sessions选项卡,右键单击会话并"Set as Active".(HTTP会话选项卡:查看 - >显示选项卡 - > HTTP会话)

现在,您可以使用登录的会话执行ZAP Spider,Active Scan等操作.如果这不是您的方案,请提供有关您的应用程序使用的身份验证方法的详细信息.

希望它仍然可以帮助您或寻找类似问题的人.谢谢,

  • 查看 -> 显示选项卡 -> HTTP 会话选项卡 (2认同)
  • 在默认上下文中包含我的站点后,我在 HTTP 会话选项卡中看不到任何条目。可能是什么问题?我的网站中有基于 cookie 的身份验证。 (2认同)

Deb*_*anB 12

通过 ZAP 代理进行身份验证

ZAP 支持由网站/webapps 实现的多种类型的身份验证。ZAP 中的身份验证方法是通过定义如何处理身份验证的上下文实现的。身份验证用于创建与经过身份验证的 webapp用户相对应的会话

OWASP ZAP实现的一些身份验证方法是:

  • 手动身份验证:此方法允许用户手动执行身份验证(例如,在通过 ZAP 代理时在浏览器中进行身份验证)。
  • HTTP/NTLM 身份验证:此方法用于使用 HTTP 或 NTLM 身份验证机制(使用 HTTP 消息标头)强制执行身份验证的网站/Web 应用程序。支持三种身份验证方案:Basic、Digest 和 NTLM。
  • 基于表单的身份验证:此方法用于通过使用“用户名/密码”对身份验证凭据提交表单或对“登录 url”执行 GET 请求来完成身份验证的网站/网络应用程序。
  • 基于 JSON 的身份验证:此方法用于通过使用“用户名/密码”对身份验证凭据将 JSON 对象提交到“登录 url”来完成身份验证的网站/网络应用程序。
  • 基于脚本的身份验证:此方法对于身份验证更复杂且一些处理身份验证过程的自定义脚本有益的网站/网络应用程序很有用。要使用此方法,您必须首先定义一个身份验证脚本,该脚本根据您的 Web 应用程序的需要发送消息或执行其他操作。然后选择此脚本用于给定的上下文,并在执行身份验证时调用它。

示范

作为示例,我将使用 URL https://jigsaw.w3.org/HTTP/Basic/根据RFC 1945演示由HTTP/1.1实现的基本身份验证测试


脚步

请按照以下步骤通过 ZAP实施基本身份验证

  • 打开 ZAP 并打开浏览器,例如Firefox,方法是单击打开您在“快速启动”选项卡中选择的浏览器的图标,该浏览器已预先配置为通过 ZAP 进行代理

ZAP_fav_browser

  • 单击Basic Authentication 测试网页上的倒数第三个链接),Basic Authentication弹出窗口出现在该测试上。
  • 提供登录凭据:
    • 用户名:来宾
    • 密码:客人
  • 现在在 ZAP 工具的历史选项卡中,找到对URL https://jigsaw.w3.org/HTTP/Basic/GET请求,并观察确认基本身份验证响应
    • 请求快照:

ZAP_request_Authorization_Basic

  • 响应快照:

ZAP_response_Authorization_Basic

  • 现在您需要创建一个Context以将其包含在Default Context 中。因此,右键单击URL 并从上下文菜单中选择Include In Context并选择Default Context

ZAP_include_in_context

  • 在 Session Management 菜单中,选择HTTP Authentication Session Management

HTTP 认证会话管理

  • 在身份验证菜单中,选择HTTP/NTLM 身份验证并提供主机名和端口。

HTTP_NTLM 身份验证

  • 在用户菜单中,添加所需用户的凭据。

用户

  • 单击“确定”按钮保存配置。
  • 最后,您需要通过从 ZAP 窗格启用它来配置 ZAP 以使用强制用户模式。

强制用户模式

  • 双击Default Context,选择Forced User并确保设置了所需的用户。

强制用户

  • 现在,选择 URL,右键单击,选择Open URL in Browser并选择Firefox

打开_URL_in_browser

  • 您将通过 ZAP通过基本身份验证自动获得授权。

你的浏览器做到了