Site icon 硬是要學

MCP 在 AI 圈爆紅,資安風險亮紅燈

AI 語言模型 (LLM) 越來越強大,為了讓這些語言模型可以擺脫訓練期間的限制,取得更即時的資訊,Anthropic 在去年推出 MCP (Model Context Protocol) 協定,隨著開發者社群的討論熱度上升,MCP 出現爆炸性成長,不過 MCP 的架構也讓駭客有更多的攻擊機會,可能造成使用者隱私資料外洩,甚至被植入後門。

MCP 是什麼? 快速回顧

MCP 提供了以下優點:

MCP 的資安隱憂

個資外流

由於 MCP 是由 AI 自動根據對話的上下文 (context) 決定要呼叫的工具 (tools),在對話期間可能發生因為 AI 的誤判或不同解讀,將個資暴露給錯誤的 MCP 伺服器 (Server),造成個資外洩。

新型態的社交欺騙

AI 會依據 MCP 伺服器的回應產生回應給使用者,惡意的開發人員可能會藉由回應來操縱 AI 行為,誘導使用者輸入他想獲得的資料。

這類的欺騙最有可能發生在一些能夠自動操作系統的工具上,從取得授權資訊、帳號密碼,甚至製造錯誤的交易訊息,都是可能的欺騙方式。

電腦檔案直接遭存取、控制

MCP 提供 stdio 以及 SSE (2025/3/26 版本協定已由 Streamable HTTP 取代) 兩種傳輸方式,其中 stdio 會直接將程式碼下載到使用者的電腦中執行。由於 MCP 可以透過執行 npx 等套件管理工具將程式碼下載到使用者端,若非開發人員,通常不會清楚哪些程式碼被下載到電腦上。

以下範例是常見的 MCP Server 設定,當 MCP 用戶端看到這個設定以後,就會直接去下載對應的程式碼並執行:

{
  "mcpServers": {
    "ABCService": {
      "command": "npx",
      "args": [
        "-y",
        "@openabc/mcp-server-abcservice"
      ]
    }
  }
}

雖然設定方式非常簡單,不過對駭客來說,這也是千載難逢的機會。

這樣的架構非常適合有心人士將有害程式碼打包在一起,但由於 MCP 並沒有規範執行環境該如何隔離,有害程式完全可以對電腦做任何操作,哪怕是要開後門都完全不費吹灰之力。更令人擔憂的是,下載到自己電腦的 MCP Server 幾乎都有存取網路的行為,就算防火牆、防毒軟體跳出警示,甚至可預期多數人會選擇略過甚至建立例外

雖然 Anthropic 在 MCP 的官方 Github 上列出很多 MCP 伺服器,不過我們建議大家優先選擇使用官方整合 (Official Integration) 清單內的 MCP Server,社群貢獻的 MCP Server 建議就多觀察一下或挑選可信賴的社群開發的整合。

至於網路上一堆 MCP Server 目錄,大家為了搶量也幾乎沒做任何防護措施,就不建議一般使用者去使用。

Exit mobile version