KeyFrame內部研究專用

SecTor 2025 | Exploiting Multi Agent Systems

Black Hat·5月22日週五·44 min英文

三句話摘要

針對多代理 AI 系統的提示注入攻擊手法全解析,從攻擊向量到防禦策略。 多代理系統的攻擊面隨 MCP 與 RAG 的普及持續擴大,而一旦 RAG 或長期記憶體遭植入惡意指令,攻擊效果可跨會話持久化——可觀測性與最小權限原則是現階段防禦的最高投資報酬率選擇。 攻擊非確定性,必須重複執行才能成功。 大多數提示注入不會在第一次嘗試時生效,成功的攻擊往往需要執行數十乃至數百次,防禦側若只看單次請求會漏掉低頻攻擊。

重點整理

重點
  • 1

    攻擊非確定性,必須重複執行才能成功。 大多數提示注入不會在第一次嘗試時生效,成功的攻擊往往需要執行數十乃至數百次,防禦側若只看單次請求會漏掉低頻攻擊。

  • 2

    鏡像系統提示格式能大幅提高注入成功率。 語言模型擅長識別模式,攻擊者取得系統提示後,刻意讓注入內容的 Markdown 格式、縮排與關鍵字與原始提示一致,可讓模型更自然地接受指令。

  • 3

    長期記憶體一旦被污染,攻擊效果持久且可橫向擴散。 記憶擷取代理若被注入惡意內容,下次該用戶登入時惡意指令便已預載,攻擊者可藉此劫持帳號並感染平台上的其他用戶。

  • 4

    資料外洩幾乎都需要搭配其他傳統駭客技法。 提示注入本身只能控制代理行為,真正將敏感資料送出去,往往還需要找到 CSP 白名單漏洞、已過期網域或外部通訊管道。

實用技巧與重點

乾貨
  • 工具:Meta Purple Llama PromptGuard(300M 參數,可跑 CPU,低延遲)、LLM as a Judge(few-shot 偵測器)
  • 攻擊框架:ReAct Loop(Plan → Action → Observe → React → Stop Task)
  • 致命三角(Lethal Trifecta):LLM 可存取私有資料 + 暴露於不可信內容 + 能對外通訊 → 高風險 CVE 必備三要素
  • VS Code Copilot CVE:版本 < 1.104,透過 README.md 注入;Agent Mode 開啟時零點擊執行;攻擊向量包含 base64 編碼偽裝成檔案雜湊
  • Microsoft 365 Copilot CVE:Inline 連結被封 → Reference 連結(一次點擊)→ 直接圖片連結被 CSP 封 → 利用 Teams 伺服器 CSP 白名單成功外洩,圖片/CSS 檔名即為編碼後的機密資料
  • Salesforce Force Leak CVE:Lead 表單 42,000 字元輸入框;研究員花 $5 購買已過期的 CSP 白名單網域完成外洩
  • 防禦措施:上下文防火牆(只對動態內容做注入偵測)、Scoped 權限(每次任務結束即回收)、監控工具呼叫頻率與回應大小、分析 Orchestrator 產生的執行計畫圖譜異常
  • 記憶體衛生:代理回傳結果不應能直接污染 Orchestrator 記憶體

結論

結論

多代理系統的攻擊面隨 MCP 與 RAG 的普及持續擴大,而一旦 RAG 或長期記憶體遭植入惡意指令,攻擊效果可跨會話持久化——可觀測性與最小權限原則是現階段防禦的最高投資報酬率選擇。

完整解析

詳細

ServiceNow 安全研究員在過去一年深入研究多代理 AI 系統的攻擊面,這場演講的核心命題是:提示注入的破壞力,等同於被注入代理所擁有的權限上限。他先從架構層介紹典型的多代理系統——用戶請求進入 RAG 後端取得內部文件,經由 Context Builder 組裝後交給 Orchestrator,Orchestrator 驅動一個 ReAct 迴圈(計畫 → 行動 → 觀察 → 調整)直到任務完成,並可呼叫下游各個專責代理。信任邊界的核心問題在於:工具回傳的內容不該直接影響 Orchestrator 的決策邏輯,代理間應有認證機制,而記憶體擷取器更是高風險元件。

在攻擊手法上,講者詳述「系統提示竊取」技術:直接詢問系統提示越來越難奏效,改用間接方式(猜謎遊戲、請求部分元件、宣稱進入「稽核模式」)效果更佳;取得系統提示後,攻擊者會鏡像其格式,讓注入指令更自然地融入模型的推理流程。另一個重要手法是「儲存型提示注入」:攻擊者將惡意文件植入 RAG 儲存庫,當用戶查詢觸發這些文件被召回時,注入便汙染 Query Builder 或記憶體擷取器,甚至能在下次用戶登入時自動觸發,實現持久性攻擊與橫向擴散。

講者接著逐一拆解三個真實 CVE。VS Code Copilot 案例中,攻擊者在惡意 PR 的 README.md 裡埋入提示注入,開發者打開專案後,若 Agent Mode 開啟且未設定審批,攻擊者可直接取得開發機 Shell,進而竊取憑證、投毒供應鏈。Microsoft 365 Copilot 郵件摘要案例更值得關注:Copilot 會在背景自動摘要郵件,無需用戶互動。攻擊者連續嘗試三種外洩路徑才成功——Inline 連結被政策封,Reference 連結需點擊,直接圖片請求被 CSP 封,最終找到 Microsoft Teams 伺服器在 CSP 白名單內,用樣式表請求的檔名承載編碼後的機密資料,完成自動外洩。Salesforce Force Leak 則利用 Lead 表單 42,000 字元的超大輸入空間儲存注入指令,當銷售人員用 LLM 輔助工具讀取這筆資料時,代理自動將可存取的本地資料編碼後傳送至攻擊者購入的過期白名單網域(花費僅 $5)。

防禦建議方面,講者強調應在「動態內容」層級做注入偵測,而非對整個 Prompt 做全量掃描;Meta PromptGuard(300M 參數)可在 CPU 上低延遲運行;LLM as a Judge 搭配 few-shot 樣本雖有延遲,但部署於旁路可產生中低強度訊號。Scoped 權限(任務結束即回收)、記憶體衛生(防止代理污染 Orchestrator 記憶體)、以及監控執行計畫圖譜的異常結構,都是優先成本效益比高的防線。可觀測性是一切防禦的前提:工具呼叫頻率、請求大小與回應時間,已能在不攫取完整 Prompt 的前提下提供大量有效訊號。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「AI 安全」的內容

Unlock Agent Autonomy: The Runtime for AI-Native Systems — Tushar Jain, Docker
22 min
AI 安全中文8月20日

Unlock Agent Autonomy: The Runtime for AI-Native Systems — Tushar Jain, Docker

AI Engineer

  • 1. 代理權限動態擴張的根本問題
  • 當代理被要求調查延遲尖峰時,它會自動擴展訪問需求——先請求日誌訪問,再要求 GitHub 儲存庫權限,最後要求 Slack 訪問。每一步都超越了信任邊界,最終導致代理擁有不受控制的全系統訪問權。傳統軟體可以提前定義權限,但自主代理的需求在運行時動態變化,這是核心難題。
  • 2. 多模型、多平台的統一防控需求
SANS Stormcast Wednesday, August 19th, 2026: Copilot as Whitstleblower; GEEKOM Bad Driver; Medusa Update; Encrypted AI
8 min
AI 安全英文PODCAST8月19日

SANS Stormcast Wednesday, August 19th, 2026: Copilot as Whitstleblower; GEEKOM Bad Driver; Medusa Update; Encrypted AI

SANS Stormcast

  • AI 系統的存取控制難以真正實施,因為一旦資料被 AI 系統存取,攻擊者總能找到繞過安全防護的方式提取資料。伺服器端請求偽造(SSRF)在聊天機器人中常見,攻擊者可騙誘 AI 系統向指定 URL 發送請求並將響應內容洩露給攻擊者。
  • Copilot 漏洞的完整利用鏈包括三個步驟:預填含惡意提示的 URL、誘導使用者點擊、利用 AI 的網頁擷取能力將敏感資料外洩到攻擊者控制的伺服器。Microsoft 的修補方案是限制允許的連結類型,犧牲了與其他系統的整合便利性以換取安全性。
Black Hat Asia 2026 | IntentGuard: Securing LLM-Generated Cloud Configurations
40 min
AI 安全英文8月18日

Black Hat Asia 2026 | IntentGuard: Securing LLM-Generated Cloud Configurations

Black Hat

  • 1. 基礎設施程式碼成為提示注入的隱形載體
  • 攻擊者可以在 CloudFormation、Terraform 等模板的註釋、環境變數預設值、引數名稱中植入指令,當 LLM 讀取這些模板生成新配置時,攻擊意圖會被隱形執行。這種攻擊能繞過傳統掃描器,因為最終輸出看似合規。
  • 2. 傳統掃描器的根本盲點:只看孤立配置,不看意圖一致性