跳到主要內容

OWASP ZAP on Tor

OWASP ZAP on Tor


問題

要讓ZAP能夠透過Tor執行時,直覺會想要直接設定zap的proxy,如下圖:

但是在實際測試時,很快就會看到這樣的錯誤訊息:
Tor is not an http proxy

這個錯誤主要是在說明Tor是Socks proxy,而Proxy是屬於OSI中Layer5的會話層(Session layer),而HTTP等是屬於Layer7的應用層(Application layer),因此由此可以得知ZAP proxy是屬於HTTP的Proxy,應該也包含了HTTPS,不過無論是HTTP/HTTPS這邊都會有錯誤,因此需要改成以Socks的Proxy,但是另外一個問題就出現了...

根本沒這個設定選項!

這部份卡了很久,總算是在官方的回覆中找到答案,不過也不是從設定去調整,而是從java去帶入參數,官方問答:https://github.com/zaproxy/zaproxy/issues/29
這是關鍵回覆:


解決此問題的關鍵兩個參數:

-DsocksProxyHost=<proxyserver>
-DsocksProxyPort=<proxyport>

完整執行zap on tor的指令:


java -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=9050 -jar zap-2.4.3.jar
注:如果是使用Tor Browser則是改成9150

然後用『Manual Request Editor』做驗證,我的驗證對象是

https://check.torproject.org

Request:
GET https://check.torproject.org/ HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
Pragma: no-cache
Cache-Control: no-cache
Content-Length: 0
Host: check.torproject.org



基本上,只要看到『Congratulations. This browser is configured to use Tor.』如下圖,就表示成功囉!!!
測試截圖:



留言