跳至主要内容

Pentest Toolkit - Zed Attack Proxy (ZAP)

什麼是 OWASP ZAP?​

OWASP ZAP 由 OWASP (Open Web Application Security Project) 開發,是目前最受歡迎的 Web 應用安全掃描工具之一。它適合初學者與資安專家,提供 被動掃描 和 主動攻擊測試 兩種模式。

ZAP 的主要功能​

  1. 被動掃描 (Passive Scanning):
    • 當你瀏覽網站時,ZAP 會自動分析請求與回應,找出潛在漏洞。
  2. 主動掃描 (Active Scanning):
    • ZAP 會模擬駭客攻擊,例如 SQL Injection、XSS、弱身份驗證機制等。
  3. 手動測試 (Manual Testing):
    • 你可以使用 Proxy 攔截請求,手動修改參數進行測試。
  4. Fuzzer (模糊測試):
    • 自動輸入隨機或特定測試數據,檢測應用程式對異常輸入的反應。
  5. 爬取網站 (Spider & AJAX Spider):
    • 幫助測試人員快速發現網站內部的所有頁面與 API 端點。

ZAP 四種掃描模式​

  • Safe Mode:禁止所有潛在的攻擊行為,確保操作安全。
  • Protected Mode:僅允許在設定範圍 (Scope) 內執行攻擊,避免影響未授權的目標。
  • Standard Mode:使用者可自由執行所有類型的攻擊行為。
  • ATTACK Mode:當設定範圍內偵測到新的網站節點時,ZAP 會自動對其執行主動掃描 (Active Scan)。

我們建議使用 Protected Mode,透過預先定義攻擊範圍 (Scope) 來限制掃描範圍,以防止攻擊未授權的網站。

如何使用 OWASP ZAP 來發現漏洞?​

1. 安裝與啟動 ZAP​

  1. 前往 OWASP ZAP 官方網站 下載並安裝。
  2. 啟動 ZAP,選擇「標準模式 (Standard Mode)」。

2. 開啟 ZAP​

  1. 因為我們不需要儲存這次所有測試內容,因此選擇第三個。

zap-is-save-session

3. 設定 Proxy​

  1. 啟動 ZAP 之後,我們可以從 Tools -> Options。

zap-options

  1. 在 Network -> Local Servers/Proxies 中確認代理的位址和 Port 號,如果 8080Port 用過可以換其他的。

zap-proxies

  1. 接著我們使用Proxy SwitchyOmega 這個 google 套件幫我們進行 Proxy,讓我們可以輕鬆連線到 ZAP。

proxy-switchy-omega-install

  1. 接著在他的設定中填寫 ZAP 的 Proxy,這樣封包就可以被 ZAP 攔截,我們也能夠分析。

proxy-switchy-omega-add-proxy

4. 設定憑證​

  1. 開啟 Proxy SwitchyOmega 後,我們連像 google 會發現出現連線不安全,原因是中間多了 ZAP 這個 Proxy,我們需要把他的憑證也加入到信任憑證中。

connection-is-not-private

  1. 我們回到 ZAP 的 Tools -> Options -> Network -> ServerCertificates,就可以發現憑證,並儲存起來。

zap-save-ca

  1. 打開Chorme 的管理憑證

chrome-trust-ca

  1. 我們在 Windows 中新增信任的根憑證,並且匯入剛剛儲存的檔案,接著安下一步到底就可以了,最後按下是即可。

windows-trust-ca

  1. 這個時候瀏覽頁面就不會被擋了

5. ZAP 模式設定​

  1. 我們僅希望在我們定義的 Scope 進行攻擊,避免誤傷其他人,因此選擇 Protected Mode。

zap-protected-mode

6. ZAP 的 Scope 設定​

  1. 新增一個Context,主要是存放我們自己的設定。

zap-create-context

  1. 因為我們測試的機器IP地址是172.23.138.63,因此我們可以設定Context的攻擊範圍只能在這個IP底下。

zap-context-set-regex

7. 產生弱點報告​

  1. 上方工具列Report-> Generate Report,我們就能產生弱點的報告了。

zap-generate-report

結論​

OWASP ZAP 是一款免費且功能強大的 Web 安全測試工具,適合開發者與資安專家使用。透過 ZAP 的被動與主動掃描,你可以輕鬆發現並修正網站的安全漏洞,提升 Web 應用程式的防禦能力。如果你還沒有使用過 ZAP,現在就是最佳時機來學習並保護你的應用程式!