代理與代理式利用
自主 AI 代理的安全概覽,涵蓋由工具呼叫、持久記憶體、多步推理與多代理協調所建立的擴大攻擊面。
AI 代理代表了大型語言模型 攻擊面的根本性擴張。基本聊天機器人僅能產出文字,但代理能執行程式碼、瀏覽網路、寄發電子郵件、修改檔案,並與外部服務互動。代理能存取的每一個工具,都是潛在的攻擊向量。
代理有何不同
傳統大型語言模型應用程式是無狀態的「文字進、文字出」系統;代理則增加:
- 工具存取 ——代理可呼叫的函式(檔案系統、API、資料庫、程式碼執行)
- 持久記憶體 ——橫跨對話與工作階段保留的狀態
- 多步推理 ——代理規劃並執行一連串動作
- 環境互動 ——代理從外部系統讀取與寫入
- 自主性 ——代理不需人類逐步核准即可作出決策
上述每一項能力都建立了在簡單聊天介面中不存在的新攻擊面。
代理攻擊面
┌─────────────────────┐
│ Tool Definitions │ ← Tool poisoning
└──────────┬──────────┘
│
User Input ──→ Agent LLM ──→ Tool Calls ──→ External Systems
↑ │ │ │
│ ┌────┴────┐ ┌────┴────┐ ┌────┴────┐
│ │ Memory │ │ Results │ │ Side │
│ │ Store │ │ Parsing │ │ Effects │
│ └─────────┘ └─────────┘ └─────────┘
│ ↑ Memory ↑ Indirect ↑ Real-world
│ poisoning injection impact
└──── Prompt injection via any input channel
| 攻擊類別 | 說明 | 影響 |
|---|---|---|
| 工具濫用 | 操控代理呼叫哪些工具及傳入何種參數 | 程式碼執行、資料外洩、權限提升 |
| 思維鏈操控 | 引導代理的推理流程,使其得出攻擊者期望的結論 | 行為微妙改動、目標劫持 |
| 多代理攻擊 | 利用協作代理之間的信任關係 | 連鎖故障、代理間注入 |
| 記憶體投毒 | 將持久性指令注入代理的記憶體 | 長期後門、跨工作階段攻擊 |
MCP 攻擊面
Model Context Protocol(MCP)將代理如何發現並呼叫工具的流程標準化。MCP 引入特定攻擊向量:
- 工具列舉 ——攻擊者可看到代理有哪些可用工具
- 工具描述操控 ——惡意工具描述可引導代理行為
- 參數注入 ——精心打造的輸入使代理將攻擊者控制的值傳給工具
- 傳輸層攻擊 ——對 stdio 或 HTTP/SSE 傳輸進行中間人攻擊
代理紅隊演練的關鍵原則
- 先繪製工具面 ——在測試注入前,先列舉代理可存取的每個工具,並理解其能力與權限
- 工具會放大注入影響 ——每個工具都是潛在的外洩通道或破壞能力
- 記憶體造成持久性 ——存入代理記憶體的注入會在當下工作階段之外延續
- 信任邊界是隱性的 ——代理通常不驗證就信任工具輸出與其他代理
- 自主性擴大影響範圍 ——不需人類確認即行動的代理是更高影響的目標
學習路徑
請從 工具使用利用 開始,理解最常見且最具影響力的代理攻擊向量,接著進入 思維鏈操控 學習更細微的技術,最後以 多代理攻擊 探討最複雜的情境。
相關主題
- 提示詞注入與越獄 ——代理利用所放大的根本漏洞
- 代理架構 ——理解 ReAct、工具使用與記憶體模式如何形成攻擊面
- 實驗:代理利用 ——實作練習利用代理的工具使用與推理
- API 安全 ——保護代理所依賴的工具介面與傳輸層
- MCP 安全 ——Model Context Protocol 特有的攻擊向量
參考文獻
- Greshake, K. et al. (2023). "Not What You've Signed Up For: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection"
- Zhan, Q. et al. (2024). "InjecAgent: Benchmarking Indirect Prompt Injections in Tool-Integrated LLM Agents"
- Ruan, Y. et al. (2024). "Identifying the Risks of LM Agents with an LM-Emulated Sandbox"
- OWASP (2025). OWASP Top 10 for LLM Applications
- Xi, Z. et al. (2023). "The Rise and Potential of Large Language Model Based Agents: A Survey"
為何工具存取會根本性地改變提示詞注入的風險輪廓?