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本地代理地址和端口

