ZAP
掃描工具 | Web |
Mobile |
Local |
API |
Extension |
Serverless |
操作說明 |
---|---|---|---|---|---|---|---|
OWASP® Zed Attack Proxy (ZAP) |
使用 OWASP ZAP;ZAP Docker 容器可針對應用程式執行自動動態掃描 (DAST)。預先定義的設定檔已包含所有必要的 CWE。您只需要將其新增至環境和 Docker 執行指令即可。 |
如要瞭解各類型的定義,請按這裡
您可以按照下列步驟,對網頁、行動裝置或內部應用程式執行完整掃描:
-
系統會使用 ZAP Docker 映像檔執行 DAST 和 API 掃描。對於網頁、行動或內部應用程式,應在 prod-1 或階段環境中執行完整的 ZAP 掃描。
-
下載 zap-casa-config.conf 設定檔,然後前往該檔案所在的目錄。
-
產生要用來執行掃描作業的內容檔案。詳情請參閱下方的「驗證」操作說明。
-
執行下列指令:
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py -t https://example.com -P 8080 -c zap-casa-config.conf -x results-full.xml -n example.context -U username
-
輸出結果會儲存在 XML 檔案中 (附件中的範例:zap-results-full.xml)
您可以按照下列步驟執行 API 掃描:
-
如要掃描 API,請使用 zap-casa-api-config.conf 設定檔。
-
前往該目錄並執行下列指令
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-api-scan.py -t https://example.com -f openapi-P 8080 -c zap-casa-api-config.conf -x results-full.xml
-
輸出內容會儲存為 XML 檔案 (範例附件如下: zap-results-api.xml)
驗證
ZAP 掃描應使用驗證機制執行,以瞭解使用者資料的儲存及存取位置。您必須先設定掃描作業,ZAP Docker 映像檔允許兩個與驗證相關的引數:
-n context_file |
掃描目標前會載入的內容檔案 |
-U 使用者 |
用於驗證掃描作業的使用者名稱。使用者必須在指定的內容檔案中定義。 |
如要設定這些參數,必須先建立結構定義檔案。最簡單的方法是透過 ZAP Desktop UI 執行這項操作。
-
設定驗證機制。ZAP 目前支援五種驗證方式:
-
手動驗證
-
表單驗證
-
HTTP/NTLM 驗證
-
以指令碼為基礎的驗證
-
以 JSON 為基礎的驗證
-
- 定義驗證參數。這通常包括登入網址和酬載格式 (使用者名稱和密碼)。必要參數專屬於使用的驗證方法。
- 新增有效的使用者和密碼。如果應用程式會根據角色提供不同的功能,請建立多個使用者。
設定這些設定後,您可以將內容匯出為檔案,供掃描作業參考。
請務必將內容儲存在方便參考的位置,因為您需要加入檔案路徑做為掃描指令的引數。 您現在可以使用在情境中指定的使用者登入資訊,執行經過驗證的掃描作業。範例:
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py -t https://example.com -P 8080 -c zap-casa-config.conf -x results-full.xml -n /Users/DemoUser/Documents/Context.context -U test@example.com