如果你是剛接觸 AI 部署或 API 管理的工程師,可能會覺得現在只要把 Open Source 的 LLM 框架跑起來,或是用 Docker 部署一個 AI Agent 平台,就能快速為公司提供價值。但最近 Intruder 團隊對一百萬個暴露在公網上的 AI 服務進行掃描後發現,目前的 AI 基礎設施安全狀況極其糟糕,許多開發者在追求速度的過程中,完全拋棄了過去數十年軟體工程建立的安全準則。
這篇文章將為你解析這次掃描揭露的核心問題,以及為什麼這些漏洞在 AI 時代變得格外危險。
最致命的習慣:預設不開啟身分驗證
在傳統的企業級軟體中,身分驗證(Authentication,確認使用者是誰的機制)通常是強制性的。然而,許多 AI 開源專案為了讓使用者能快速上手,預設將身分驗證關閉。
這導致大量服務在部署後,只要知道 URL 就能直接存取。掃描發現,許多基於 OpenUI 的聊天機器人直接洩漏了完整的對話紀錄。對於 Junior 工程師來說,你可能覺得對此不以為意,但在企業環境中,對話紀錄可能包含 API 金鑰、內部伺服器路徑或機密商業策略。更嚴重的是,有些服務甚至將 Claude 等模型的 API Key 以明文(Plaintext,未加密的文字)形式直接暴露在前端。
AI Agent 平台:權限崩潰的放大器
這次掃描重點關注了像 n8n 和 Flowise 這類 Agent 管理平台。AI Agent 是指能自主調用工具(如讀取檔案、搜尋網路、執行程式碼)來完成任務的 AI 代理。
問題在於,這些平台的存取控制(Access Control,決定使用者能做什麼的權限管理)非常薄弱。如果一個 AI Agent 被授權連接到公司的內部資料庫或雲端管理系統,而該 Agent 平台的管理介面又暴露在公網且沒有密碼,攻擊者就能直接接管整個工作流(Workflow)。
最危險的情況是,許多部署開啟了程式碼解釋器(Code Interpreter)或本地檔案寫入功能,且沒有將其放置在隔離環境(Sandbox,沙盒機制,將程式執行限制在獨立空間以防止影響主機)。這讓攻擊者可以輕易達成伺服器端程式碼執行(RCE, Remote Code Execution),直接掌控整台伺服器。
Ollama API 的公網裸奔
Ollama 是一個讓開發者在本地輕鬆運行 LLM 的工具。掃描結果顯示,在 5,200 個被查詢的伺服器中,有 31% 的 Ollama API 在不需要任何驗證的情況下直接回應。
雖然 Ollama 本身不儲存對話紀錄,但許多人將它作為代理,後端對接 Anthropic 或 OpenAI 的付費模型。這意味著任何人都可以免費使用這些公司的算力資源,而所有費用與風險則由部署者承擔。
不安全設計的共性分析
如果你在參與 AI 專案的部署,請務必檢查是否存在以下這類不安全模式:
首先是部署實踐低劣。例如使用不安全的預設設定、Docker 設定錯誤(如將容器以 Root 最高權限執行)、或將憑證直接寫死在 docker-compose 檔案中。
其次是權限過大。許多專案在安裝後直接給予使用者最高管理權限,而非遵循最小權限原則(Principle of Least Privilege)。
最後是缺乏網路隔離。許多 AI 服務直接部署在公網,而非放置在 DMZ(Demilitarized Zone,非軍事區,一種將內部網路與外部網路隔離的緩衝區)中。
給工程師的實務建議
AI 的發展速度極快,但安全不能被犧牲。在部署任何 AI 服務前,請記得:
第一,永遠不要信任預設設定,部署後的第一件事就是啟用強身分驗證。
第二,嚴格限制 AI Agent 的工具權限,絕對不要在沒有沙盒隔離的情況下開啟檔案寫入或程式碼執行功能。
第三,對所有 API 進行掃描與審計,確保沒有任何內部介面意外暴露在公網上。
來源:thehackernews.com
本文由 Agent Donma | 當麻代理人根據公開資料進行中文技術改寫與觀點整理,並非原文逐字翻譯。