AppScan 模型上下文通訊協定 (MCP) 伺服器

AppScan MCP 伺服器可將 HCL AppScan 360° 直接整合至 AI 驅動的開發環境和代理程式。透過實作模型上下文通訊協定 (MCP),此伺服器可讓 LLM(例如 Claude 或在 VS Code 中執行的模型)安全地存取您的安全資料(包括 SAST、DAST、SCA 和 IAST 結果),以協助您分類問題、分析發現項目,並使用自然語言將工作流程自動化。

概觀

AppScan MCP 伺服器可作為您的 AppScan 資料與 AI 助理之間的橋接。您無需手動登入儀表板來檢查掃描或發現項目,而是可以向您的 AI 工具提出如下問題:
  • 「在 'WebGoat' 應用程式中有哪些重大的 SAST 問題?」
  • 「請彙總問題 #5 的補救建議。」
  • 「找出所有具有『高』嚴重性漏洞的開放原始碼程式庫。」

工具

MCP 伺服器提供一組功能完整的工具,讓 AI 代理程式能夠執行以下動作:
  • 完整資料存取:跨所有掃描技術(靜態、動態、軟體組成分析及互動式分析)查詢發現項目。
  • 應用程式和掃描管理:擷取特定應用程式、掃描及掃描執行的詳細資料。
  • 問題分類:依嚴重性、狀態或範圍(應用程式或掃描層級)過濾問題。
  • 詳細分析:提取完整的問題詳細資料,包括位置、追蹤資訊及具體的補救建議。
  • SCA 深入見解:查詢專案中使用的開放原始碼程式庫及授權資訊。
  • 原則:依安全原則過濾發現項目。

配置

若要使用 AppScan MCP 伺服器,請使用您的 HCL AppScan 360° 認證配置 MCP 用戶端(例如 VS Code MCP 延伸模組或 Claude Desktop)。

先決條件
  1. AppScan 360° 帳戶:有效的 AppScan 360° 帳戶。
  2. API 金鑰:AppScan 360° 儀表板產生 API 金鑰 ID 和密碼。

VS Code 配置

若要將 AppScan 新增至 VS Code,請編輯您的 MCP JSON 配置檔(通常位於 MCP 延伸模組設定中)。新增伺服器定義,並配置輸入提示以安全地處理認證資訊。

將下列內容新增至您的配置:

{
                "servers": {
                "appscan-mcp": {
                "type": "http",
                "url": "https://cloud.appscan.com/mcp",
                "headers": {
                "X-API-KEY": "${input:appscan_api_key_id}:${input:appscan_api_key_secret}"
                }
                }
                },
                "inputs": [
                {
                "id": "appscan_api_key_id",
                "type": "promptString",
                "description": "AppScan API Key Id",
                "default": ""
                },
                {
                "id": "appscan_api_key_secret",
                "type": "promptString",
                "description": "AppScan API Key Secret",
                "default": "",
                "password": true
                }
                ]
                }
            
註: 此配置使用輸入提示,以確保您的 API 密碼不會以純文字形式儲存在配置檔中。當伺服器啟動時,系統會提示您輸入認證資訊。

最佳實務:使用 appscan-doc 提示

此伺服器包含名為 appscan-doc 的內建提示。此提示會將必要的上下文、結構定義及規則載入 AI 模型的上下文視窗。此提示說明如何建構 OData 查詢、正確處理 GUID(例如不加引號),以及對結果進行分頁。

在開始分析之前,您必須明確啟用此提示。方法取決於您的用戶端:

VS Code

在聊天介面中開始輸入 /mcp。隨即顯示可用提示清單;請從清單中選取 appscan-doc。

Visual Studio 2022
  1. 按一下聊天視窗中的 + 參考按鈕。
  2. 選取選項以檢視並套用 MCP 提示。
  3. 從可用選項中選取 appscan-doc

Windsurf

使用 /<mcp-server-name>/<prompt-name> 格式明確輸入指令。

針對此伺服器,請輸入:
/appscan-mcp/appscan-doc

為什麼這很重要?載入後,AI 即可正確查詢 API。例如,它會針對列舉使用字串值(例如 Status eq 'Open'),而非數值。

直接程式碼補救

在 IDE 中使用 AppScan MCP 的一項主要優點是能夠直接將修正套用至您的程式碼。

如果掃描的原始碼(透過 SAST、DAST、SCA 或 IAST)可在您的 IDE 工作區中使用,AI 模型即可將安全發現項目連結至您的本端檔案。get_issue_details 工具可向 AI 提供精確的檔案位置、追蹤資訊及補救建議。接著,AI 可將此資訊對映至您已開啟的檔案,並套用必要的程式碼變更。

工作流程範例:
  1. 開啟專案:請確保已在您的 IDE(例如 VS Code、Windsurf 等)中開啟掃描的專案。
  2. 要求修正:請要求 AI 處理特定問題。「取得 'PaymentService' 應用程式中高嚴重性的 SAST 發現項目。找到 SQL 注入問題並將修正套用至我的程式碼。」
  3. AI 動作:
    1. AI 會查詢 MCP 伺服器以取得問題詳細資料(行號、有漏洞的程式碼片段及修正邏輯)。
    2. 它會在您的本端工作區中找出對應的檔案。
    3. 它會產生程式碼修補程式並直接在您的編輯器中套用修正。

進階工作流程與整合

由於 MCP 是標準通訊協定,您可以將 AppScan 伺服器與其他 MCP 伺服器串接,以建立功能強大的自動化工作流程。

範例:自動建立問題單 (AppScan + Jira)

如果您同時配置了 AppScan MCPJira MCP,您可以在單一對話中執行複雜的分類作業:

使用者提示:

「找出 'Retail-Frontend' 應用程式中前 3 大重要問題。針對每個問題,在我們的 Jira 專案 'SEC' 中建立錯誤問題單,並在其中加入問題描述和補救建議。」

AI 代理程式將會:
  1. 使用 AppScan 工具查詢重要問題並提取其補救詳細資料。
  2. 將該資料格式調整為 Jira 問題單結構。
  3. 使用 Jira 工具張貼新的問題單。
  4. 將新的 Jira 問題單連結回傳給您。