紅隊視角的 AI 系統架構
Beginner3 min readUpdated 2026-03-13
AI 系統如何於生產環境部署——模型 API、提示範本、編排、工具、記憶體與防護機制——並於每一層進行攻擊面分析。
超越模型:生產環境中的 AI 系統
對 AI 進行紅隊時,你幾乎從不會只對「裸模型」動手。生產級 AI 系統是分層架構,由多個元件組成,每一層都引入自己的攻擊面。理解此架構是任何委任的第一步。
典型的生產級 AI 系統包含:
┌─────────────────────────────────────────────────┐
│ 使用者介面 │
├─────────────────────────────────────────────────┤
│ 輸入防護機制 │
├─────────────────────────────────────────────────┤
│ 編排層 │
│ ┌──────────┐ ┌──────────┐ ┌──────────────┐ │
│ │ 提示 │ │ 記憶體 │ │ 工具/API │ │
│ │ 範本 │ │ 儲存 │ │ 連接器 │ │
│ └──────────┘ └──────────┘ └──────────────┘ │
├─────────────────────────────────────────────────┤
│ 模型 API │
├─────────────────────────────────────────────────┤
│ 輸出防護機制 │
├─────────────────────────────────────────────────┤
│ 使用者介面 │
└─────────────────────────────────────────────────┘
元件分解
1. 模型 API
LLM 本身,透過 API 存取(OpenAI、Anthropic、本地部署等)。
| 面向 | 細節 |
|---|---|
| 功用 | 依提示輸入產生文字 |
| 信任層級 | 高——被視為系統的「大腦」 |
| 攻擊面 | 提示注入、越獄、參數操弄 |
| 關鍵參數 | model、temperature、max_tokens、系統提示 |
詳見 LLM API 呼叫解剖 的深入分析。
2. 提示範本
針對特定用途塑造模型行為的系統提示與範本。
SYSTEM_PROMPT = """You are a customer support agent for Acme Corp.
Rules:
- Only answer questions about Acme products
- Never reveal internal pricing formulas
- Always be polite and professional
- If unsure, escalate to a human agent
Context: {retrieved_context}
"""| 面向 | 細節 |
|---|---|
| 功用 | 定義模型角色、約束以及可用上下文 |
| 信任層級 | 開發者掌控,應視為機密 |
| 攻擊面 | 系統提示擷取、指令覆蓋、範本注入 |
3. 編排層
協調模型、工具、記憶體與使用者介面之間的應用邏輯。包括 LangChain、LlamaIndex 等框架以及自訂程式碼。
| 面向 | 細節 |
|---|---|
| 功用 | 路由請求、管理對話流程、處理工具呼叫 |
| 信任層級 | 應用程式碼——依實作品質而異 |
| 攻擊面 | 邏輯錯誤、輸入驗證不足、狀態操弄 |
4. 工具連接器
模型可呼叫的外部工具與 API——資料庫、網頁搜尋、程式碼執行、檔案系統、第三方 API。
| 面向 | 細節 |
|---|---|
| 功用 | 以真實世界動作擴充模型能力 |
| 信任層級 | 高風險——工具可造成副作用(寫入資料、發送 email、執行程式碼) |
| 攻擊面 | 工具呼叫操弄、參數注入、提權 |
5. 記憶體 / 狀態
對話歷史、使用者偏好、session 狀態與長期記憶儲存。
| 面向 | 細節 |
|---|---|
| 功用 | 維持跨互動的上下文 |
| 信任層級 | 含先前模型輸出與使用者資料——混合信任 |
| 攻擊面 | 記憶體投毒、上下文操弄、跨 session 攻擊 |
6. 防護機制(Guardrails)
強制執行安全與業務規則的輸入與輸出過濾。
| 類型 | 位置 | 技術 |
|---|---|---|
| 輸入防護 | 模型之前 | 內容分類器、關鍵字過濾、提示注入偵測 |
| 輸出防護 | 模型之後 | 毒性過濾、PII 遮蔽、格式驗證 |
| 結構性防護 | 編排層 | 速率限制、輸出長度限制、工具呼叫驗證 |
信任邊界
信任邊界存在於任何在不同信任層級元件之間流動資料之處:
| 邊界 | 從 → 到 | 主要風險 |
|---|---|---|
| 使用者 → 系統 | 不可信 → 可信 | 提示注入 |
| RAG 檢索 → 提示 | 半可信 → 可信 | 間接注入 |
| 模型 → 工具呼叫 | 模型產生 → 被執行 | 任意工具呼叫 |
| 工具結果 → 模型 | 外部資料 → 可信上下文 | 結果注入 |
| 記憶體 → 提示 | 儲存資料 → 使用中上下文 | 持續性注入 |
速查:各層攻擊面
| 層級 | 主要攻擊 | 影響 |
|---|---|---|
| 使用者介面 | 輸入製作、編碼手法 | 低——由下游層過濾 |
| 輸入防護 | 過濾繞過、規避 | 中——取得存取模型的途徑 |
| 提示範本 | 系統提示擷取、覆蓋 | 中——改變模型行為 |
| 編排 | 邏輯利用、狀態操弄 | 高——可改變控制流 |
| 模型 API | 越獄、提示注入 | 高——控制生成輸出 |
| 工具連接器 | 參數注入、未授權呼叫 | 嚴重——真實世界副作用 |
| 記憶體 | 投毒、跨 session 注入 | 高——持續性入侵 |
| 輸出防護 | 輸出操弄、編碼繞過 | 中——規避安全過濾 |
相關主題
- LLM API 呼叫解剖 — 對模型介面層的深入解析
- 代理架構與工具使用模式 — 編排模式與工具使用
- 常見 AI 部署模式 — 為不同用途而組態的這些元件
- 實驗:繪製 AI 系統攻擊面 — 實務練習
參考資料
- "OWASP Top 10 for LLM Applications" - OWASP(2025)- 業界標準的 LLM 應用安全風險分類,含不安全外掛設計與過度授權
- "Not What You've Signed Up For: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection" - Greshake et al.(2023)- 研究展示 AI 系統中信任邊界如何可經由間接注入加以利用
- "Architectural Risk Analysis of Large Language Models" - Trail of Bits(2024)- 對生產級 AI 系統架構跨層攻擊面的系統性分析
- "The Dual LLM Pattern for Building AI Assistants That Can Resist Prompt Injection" - Simon Willison(2023)- 將 AI 系統中可信與不可信上下文分離的實務架構模式
Knowledge Check
生產級 AI 系統中,哪個元件通常具有影響最大的攻擊面?