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
這是關鍵回覆:
解決此問題的關鍵兩個參數:
完整執行zap on tor的指令:
-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.』如下圖,就表示成功囉!!!
測試截圖:
留言
張貼留言