安裝及使用 Azure DevOps Services 外掛程式

這個作業說明如何安裝及使用 Azure DevOps Services 外掛程式,以便在 Azure DevOps Services 和 Team Foundation Server (TFS) 管線中,執行靜態或動態掃描。(Azure DevOps Services 先前稱為 Visual Studio Team Services (VSTS))。

註: 請注意,AppScan on Cloud 服務的 URL 為:請從先前在 IBM 的服務位置移轉到這個位置,包括更新服務端點內容。如需相關資訊,請參閱 https://support.hcl-software.com/csm?id=kb_article&sysparm_article=KB0069537

指導教學

安裝 Azure DevOps/TFS 外掛程式

註: AppScan on Cloud 支援 TFS 2018 版更新 2 及更新版本。
如果要使用 Azure DevOps/TFS 外掛程式,您必須先從 Azure DevOps 市集下載外掛程式,然後進行安裝:
  1. 在 Azure DevOps Services 中,前往「管理延伸 > 瀏覽市集」。
  2. 在產生的視窗中,搜尋 HCL
  3. 選取及安裝 HCL AppScan 外掛程式。
註: 如果是 TFS,請依照指示從 Azure DevOps 市集下載外掛程式。完成之後,前往「管理延伸 > 瀏覽本端延伸 > 上傳新的延伸」,然後選擇已下載的延伸進行安裝。

設定 Azure DevOps 環境

如果要配置 Azure DevOps 環境以進行測試:

  1. 登入 Azure DevOps Services。
  2. 建立新組織:
    1. 按一下「建立新組織」。
    2. 指定組織名稱。
    3. 指定專案名稱。
    4. 指出專案為公用或私密。
    5. 按一下確定
  3. 讓程式碼儲存庫與專案產生關聯:
    1. 按一下「儲存庫 > 檔案」。
    2. 選取「匯入」。
    3. 選擇儲存庫的來源類型。
    4. 指定儲存庫的複製 URL。
    5. 按一下「匯入」。
  4. 建立建置管線:
    1. 按一下「管線 > 建置」。
    2. 按一下「新管線」。
    3. 按一下「使用視覺化設計程式」。
    4. 在選取來源時,按一下「Azure Repos git」,選取要掃描的儲存庫,然後按一下「繼續」。
    5. 選取「空管線」和「繼續」。
    6. 按一下「代理程式工作 1」旁邊的 +,搜尋 NuGet,然後按一下「新增」。
    7. 從作業中選取「NuGet 還原」,並且將其指向解決方案檔案。在「解決方案、packages.config 或 project.json 的路徑」底下,瀏覽至適當的 .sln 檔案。
    8. 按一下「代理程式工作 1」旁邊的 +,以新增第一個步驟。依序按一下「建置」、「Visual Studio 建置」、「新增」。
    9. 按一下「建置解決方案 **/*.sln」並且將其指向解決方案檔案。在「解決方案」欄位中,瀏覽至適當的 .sln 檔案。
    10. 按一下「儲存並排入佇列」以測試建置。

      當您對建置進行調整時,新增註解以反映這些變更。您每次按一下「儲存並排入佇列」時,建置號碼就會更新。

使用 Azure DevOps/TFS 外掛程式

新增安全測試

如果要將安全測試新增至 Azure DevOps/TFS 中的建置程序:
  1. 選擇下列其中一項:
    • 如果是 Azure DevOps Services,請從您專案的首頁選擇「管線 > 建置」功能表。
    • 如果是 TFS,請選擇「建置和版本 > 建置」。
  2. 編輯您想要在其中新增安全測試的管線。
  3. 在「作業」標籤上。按一下「+」以新增作業。
  4. 找到作業為 HCL AppScan on Cloud,然後按一下新增
  5. 在您的建置程序中,按一下新增的執行 HCL AppScan on Cloud 安全測試作業。
  6. 指定「作業設定
    1. 在「顯示名稱」輸入字串。

      這個字串會成為建置程序中的作業名稱。

    2. 從清單中選取適當的認證

      如果「認證」欄位是空白的,請參閱新增服務端點

    3. 選取「應用程式」清單中的應用程式。

      隨即根據您選取的認證移入「應用程式」下拉清單。

    4. 在「掃描名稱」欄位中輸入掃描的名稱。選用。

      這個名稱會成為服務中掃描的名稱。

    5. 從「掃描類型」清單中選取掃描類型:
      • 選取「Static Analyzer」以執行靜態分析安全測試。
        1. Static Analyzer 掃描參數
        參數 說明
        要掃描的儲存庫子目錄 輸入值或是從儲存庫的檔案瀏覽器對話框選取值(選擇性)。依預設,服務會掃描整個儲存庫。如果要將掃描限制為子目錄,請在這裡指定相對路徑。
        其他選項
        掃描速度 根據需要和時間需求,指定掃描最佳化層次:
        • 簡易」:simple 掃描會執行檔案的表面層次分析,為您識別最需要補救的緊迫問題。此類掃描完成所需的時間最短。
        • 平衡balanced 掃描提供中等層次的安全問題分析和識別,完成所需的時間比 simple 掃描稍微久一點。
        • 深層:預設值。deep 掃描會對您的檔案執行更完整的分析,以識別漏洞,通常需要較久的時間才能完成。
        • 完整thorough 掃描會執行全面性的分析,識別最全面的漏洞清單,因此完成所需的時間最久。
        註: 掃描速度與在程式碼中找到的漏洞數目不一定相關。例如,thorough 分析可能會排除 simple 掃描報告中的誤判,因此報告的漏洞較少。
      • 選取「動態分析器」,對執行於瀏覽器中的應用程式執行分析。
        2. Dynamic Analyzer 掃描參數
        參數 說明
        起始 URL

        輸入 URL,表示您要掃描開始探索網站的位置。

        如果您選取「其他選項」,則有下列選用設定可用:

        其他選項
        網站類型 指出您的網站是「暫置」網站(開發中)或「正式作業」網站(現正使用中)。或是選擇「NA」。
        測試最佳化 指定最佳化層次:
        • 無最佳化(預設值):一般深度掃描。掃描時間較久。最大漏洞涵蓋範圍。
        • 快速:速度加快高達兩倍。漏洞涵蓋範圍 ~97%。
        • 較快:速度加快高達五倍。漏洞涵蓋範圍 ~85%。
        • 最快:速度加快高達十倍。漏洞涵蓋範圍 ~70%。

        如需測試最佳化和相對掃描深度和速度的其他資訊,請參閱「測試最佳化」。

        登入使用者和登入密碼 如果應用程式需要登入,請輸入有效的使用者認證。
        第三方認證 如果您的應用程式需要第三方認證,請在此欄位中輸入它。
        Presence 如果應用程式不在網際網路上,請輸入 AppScan Presence 名稱。如需建立 AppScan Presence 的相關資訊,請參閱 AppScan Presence
        掃描檔案 如果您擁有 AppScan Standard 掃描檔案,請在此欄位中輸入相對路徑和檔名。如果要進一步瞭解 AppScan Standard 標準掃描檔案,請參閱使用 AppScan Standard 掃描或範本

        如果要進一步瞭解動態分析設定,請參閱建立 Web 應用程式掃描

進階選項

進階選項不是使用 Azure DevOps/TFS 外掛程式的必要選項。如果要設定進階內容:

  1. 按一下「進階」以顯示其他選項。
  2. 選取「電子郵件通知」勾選框,在安全分析完成時接收電子郵件。電子郵件會傳送到與選取的認證相關聯的電子郵件位址。
  3. 選取「以個人掃描執行」,以評估開發中應用程式的相對安全性,而不影響整體的應用程式掃描資料或合規性。在已淘汰的 HCL AppScan 作業中,無法使用個人掃描支援。
  4. 請選取容許掃描啟用團隊介入,以允許掃描啟用團隊在掃描失敗或找不到問題時介入,以嘗試修正配置。這可能會導致掃描結果延遲。依預設,會選取此選項。
  5. 選取「暫停工作,直到安全分析完成」:如果您要在進行管線中的下一步之前,讓 Jenkins 建置等待安全分析結果成為可用,請選取此勾選框。
  6. 選取「失敗建置配置」以指定使建置根據安全測試結果而失敗的條件。只有在選取「暫停工作,直到安全分析完成」時,才會顯示「失敗建置配置」。
    • 選取「與應用程式原則不相符」,在發現任何不符所選取應用程式原則規範的安全問題時,使建置失敗。
    • 選取「當下列條件為真時」,根據不符規範之「總計」安全問題、「重大」嚴重性安全問題、「」嚴重性安全問題、「」嚴重性安全問題,或「」嚴重性安全問題的指定數目,使建置失敗。如果指定多個臨界值,邏輯上為 OR 關聯。
  7. 一旦建置完成,您可以從「建置摘要」頁面上的「應用程式安全報告」標籤,檢視或下載掃描報告。此報告僅包含不相容的問題。
    「應用程式安全」報告和 irx. 產生日誌(適用於「靜態」掃描)也可以透過「Azure 管線建置」日誌下載。
    註: 請注意,如果未選取「暫停工作,直到安全分析完成」的選項,則無法下載掃描報告。在此情況下,您可以從 HCL AppScan On Cloud 入口網站下載報告。

新增服務端點

如果在「作業設定」中「認證」欄位是空白的,您必須配置服務端點。如果要配置服務端點以使用 Azure DevOps/TFS 外掛程式:

  1. 在「作業設定」中,按一下空白「認證」欄位上方的「管理」。
  2. 在產生的視窗中,按一下「新增服務端點」。
  3. 從端點的清單中按一下 HCL AppScan on Cloud
  4. 在產生的對話框中填入詳細資料,然後按一下「確定」。
    3. 服務端點內容
    內容
    連線名稱 連線的邏輯名稱。
    伺服器 URL
    KeyID AppScan on Cloud 服務取得您正在使用的資料中心 的 KeyID 和 KeySecret:
    KeySecret

最佳化掃描並且檢閱結果

至於其他掃描,您可以使用配置檔,藉由指定個別目標納入掃描或從掃描中排除以及指定其他資訊,來最佳化掃描。配置檔案應放在專案的根目錄,讓外掛程式挑選它進行掃描。

當掃描完成時,AppScan on Cloud 會產生掃描的報告。檢閱結果中的資訊,以瞭解安全漏洞的報告方式,以及如何修補問題。