範例 2:透過建置自動化來進行 DAST 掃描
開始之前
註: 必須建立要使用的掃描範本。不能是預設包含在 ASE 中的其中一個預設項目(例如:快速與簡易掃描或開發人員錦囊)。這個示範假設「手動探索伺服器」是安裝在預設位置:C:\Program Files (x86)\HCL\AppScan Manual Explorer。
程序
當在 Jenkins 中啟動 AltoroJ 的建置時,工作流程會隨即啟動。工作流程:
- 建置在 Jenkins 中完成。
-
Jenkins 執行公佈建置作業
python Selenium_StartScan.py dast_auto.config
。 - Script 會啟動手動探索伺服器。
-
執行 Selenium Script
Selenium_Altoro_View_AcctDetails.py
。(資料流量 Proxy 經過手動探索伺服器)。 - M.E.S 已停止且資料流量擷取已儲存為工作區目錄中的 HTD 檔案。
- 如果沒有掃描工作,則會在 ASE 中建立一個掃描工作。
- 起始 URL 已新增至工作(舊的會被改寫)。
- HTD 檔案已遭到刪除。
- 登入類型設為自動。
- 測試認證已新增至掃描工作。
- 掃描已執行。
- 報告套件已執行。
- 安全問題已從「安全問題」報告擷取。
-
monkit.xml 已更新,讓 Jenkins 可以顯示圖形。
此處理程序的必要檔案為:
-
dast_auto.config - 這是自動化的配置檔。編輯此檔案以變更 Script 的行為。例如:變更掃描範本或起始 URL。Selenium_StartScan.py 檔案具有可以產生空白配置檔的函數。
- scans.py - Python 程式庫,其中包含對 ASE 的 API 呼叫。
-
Selenium_Altoro_ViewAcctDetails.py - Selenium Script,它會登入 AltoroJ,檢視第一個帳戶的帳戶詳細資料並且執行搜尋。
-
Selenium_StartScan.py - Python Script,其中包含在上述步驟 3 到步驟 14 中所述的邏輯。編輯行 #80 以調整 Jenkins 專案資料夾命名。
- monkit.xml - 一個檔案,Jenkins 可以用來顯示我們的安全掃描的結果。
-
geckodriver.log - 針對 geckodriver 自動產生的日誌檔。geckodriver 是驅動程式,可讓 Selenium 透過 Python 與 Firefox 互動
-