安全性测试:OWASP ZAP 2.8 使用指南(三):ZAP代理设置

时间:2024-01-25 12:24:22

ZAP本地代理设置

如前文所言,ZAP的工作机制,是通过“中间代理”的形式实现。

 

ZAP的代理设置可以从菜单中的:工具 - 选项 - Local Proxies加载。

在这里可以设置ZAP用来接受接入请求的地址和端口等。

 

 

地址

 ZAP将要使用的本地地址。所有的可用地址都会被自动检测到并且列出。

无特殊要求可以直接使用localhost或127.0.0.1。

 

端口

ZAP将会监听的端口,默认8080。如与本机其他服务端口冲突(比如tomcat也是默认使用8080)可以修改使用其他端口。

 

基本上配置好地址和端口,ZAP的代理就已经设置完毕可以开始监听了。除此之外还有几项设置:

Behind NAT

 表明ZAP本地代理将会使用NAT模式。选择此项后,ZAP会尝试确定公网IP,以检测和处理从公网IP接入的请求。

这个选项只对以服务(API)模式应用ZAP时有效。

 

Remove Unsupported Encodings

 允许代理将不支持的编码从"Accept-Encoding"请求头中移除,这样代理不会对响应做出转码。

如非专门测试转码,此选项应始终保持勾选。

使用不支持的编码的信息将不会被扫描(主动、被动都不会)。

 

Security Protocols

 允许选择接入连接(比如浏览器)可使用的SSL/TLS版本。最少需要选择一个版本,而且不被JRE支持的版本将不能选择。

SSLv2Hello协议必须与其他SSL/TLS结合使用。

 

以上的设置对于主代理和附加代理都生效。

 

附加代理

 

在附加代理模块,我们可以按照需求添加更多的代理地址和端口让ZAP进行监听。

 

拦截代理/透明代理

ZAP本地代理也可以被设置为拦截/透明代理。透明代理一般用来将内网请求进行拦截再转发,比如常见的上网监控管理就是使用拦截代理实现。

比如,你有一台测试用的Linux机器,那么通过以下命令可以把所有HTTP和HTTPS路由到ZAP的监听地址(例:172.16.100.38:8080):

iptables -t nat -A OUTPUT -p tcp --dport 443 -j DNAT --to-destination 172.16.100.38:8080
iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-destination 172.16.100.38:8080

 

 

 

客户端代理设置

Chrome (on Windows)

  • 点击右上角“自定义及控制chrome”
  • 选择“设置”
  • 选择“高级”
  • 选择“打开代理设置”
  • 然后按照局域网设置

 

Firefox (on Windows)

  • 打开“菜单-选项”
  • 选择“高级”
  • 选择“网络”
  • 选择“连接-设置”
  • 选择“手动配置代理”
  • 填入ZAP本地代理地址和端口
  • 勾选“为所有协议使用相同代理”

   

 Windows局域网代理

  • 打开“Ineternet选项-连接”
  • 点击“局域网设置”
  • 选择“为LAN使用代理服务器”
  • 填入ZAP本地代理地址和端口

 

 

  

手机代理设置

  • 确保手机wifi和ZAP代理处于同一局域网内
  • 进入手机“设置-无线和网络-WLAN”
  • 选中已连接的wifi选择“修改网络”
  • 勾选“显示高级选项”
  • 选择代理方式为“手动”
  • 填入ZAP地址和端口