使用設定檔案來掃描應用程式

2022/9/29 |

Lucent Sky AVM 提供許多掃描的選項,但為掃描設定這些進階選項可能相當費時。藉由 configuration as code,掃描設定可存在和程式碼相同位置的設定檔案中。當掃描開始時,設定檔案中的設定會被用來設定掃描。

這篇文章描述如何使用 configuration as code 來使用進階選項掃描一個應用程式。

在這個文章中,你將會學習如何:

  • 建立 YAML 設定檔案
  • 使用設定檔案中的設定來掃描應用程式

本文結束後,你將能夠建立 YAML 設定檔案,以及使用設定檔案中的設定來掃描應用程式。

建立 YAML 設定檔案

設定檔案支援以下掃描設定,分析目標參數弱點原則,和來源

每個掃描設定以一個字串標籤來表示。若某個標籤不存在設定檔案中,或其值為 null,既有的設定會被使用。要明確指定空字串為該設定的時,使用一組單引號。

每個掃描設定的有效值和 CLI 接受的相同。要深入了解關於掃描設定,請參考 Lucent Sky 知識庫:
Lucent Sky AVM CLI 參考資料

  1. 在應用程式的根目錄建立一個名為 lucent-sky-avm-config.yaml 的空白文字檔案。
  2. 將以下內容加入檔案中:

     AnalysisTarget: 'ContosoWeb\ContosoWeb.csproj'
     Arguments: ''
     WeaknessPolicies: 'CWE330,0'
     Vectors:
    

    以上範例設定 ContosoWeb\ContosoWeb.csproj 為分析目標,清除既有的掃描參數,設定弱點原則為 CWE330,0,並使用既有的來源設定。

  3. 建立一個包含該應用程式的 .zip 檔案,設定檔案在壓縮檔案的根目錄。

使用設定檔案中的設定來掃描應用程式

  1. 使用 Web UI 建立一個新的掃描。Use the Web UI to create a new scan.
  2. 在掃描設定中,確認分析目標弱點原則是空白的,插入 MsBuild,12掃描參數,並在來源中取消勾選 Client
  3. 上傳包含設定檔案的程式碼壓縮檔來開始掃描。
  4. 當掃描完成後,移動至掃描細節頁並確認以下資訊:

    • 分析目標顯示 ContosoWeb\ContosoWeb.csproj,和設定檔案中的相同
    • 掃描參數顯示預設,和設定檔案中的相同
    • 弱點原則顯示 CWE330,0,和設定檔案中的相同
    • 來源不包含 Client,因為設定檔案未設定來源,因此使用了建立掃描時的設定

要避免掃描使用設定檔案中的設定,將 IgnoreConfigFile 掃描參數的值設為 True