論文 發布於 AIA: 2026年5月18日

AI agent 系統層級防禦:間接提示詞注入不能只靠模型判斷

這篇由 NVIDIA 研究人員所撰寫出的論文重點為:間接提示詞注入攻擊(indirect prompt injection)不只是「把提示詞過濾乾淨」的問題。通用型 AI agent 需要清楚界定:誰能改計畫、誰能改政策、哪些動作要核准、哪些元件能執行工具,以及外部資料回來後能不能影響下一步決策。這樣才不會讓不可信的 email、網頁或工具回傳結果,偷偷改掉 agent 可以做什麼。AIDEFEND 已經有多個 techniques 和 subtechniques 對應到這些防線,包括權限範圍、動態工具權限、政策執行、受限的模型判斷、資料流向控管、人類介入點和 agent 安全基準測試。

Indirect Prompt InjectionSystem-Level DefenseTool AuthorizationAgentic AI
9 項對應的 AIDEFEND 防禦手法
來源: Architecting Secure AI Agents: Perspectives on System-Level Defenses Against Indirect Prompt Injection Attacks 
作者 Chong Xiang, Drew Zagieboylo, Shaona Ghosh, Sanjay Kariyappa, Kai Greshake, Hanshen Xiao, Chaowei Xiao, G. Edward Suh · 原文發布: 2026年3月31日

威脅分析

  • 攻擊路徑從「不可信資料變成操作建議」開始。 攻擊者把惡意指令藏在 email、網頁、文件或工具輸出裡。agent 在執行正常任務時讀到這些內容,惡意文字就可能試著影響下一步計畫、政策更新或工具呼叫。
  • 動態重新規劃很有用,但也多了一個有資安風險的地方。 實用的 agent 可能需要在 API 被淘汰、測試失敗、工作流程回傳新證據時調整做法。這篇論文提醒我們:如果外部資料可以影響 agent 下一步要怎麼做,系統就要判斷清楚:這是正常任務需要的調整,還是被惡意內容帶歪。
  • LLM 可以幫忙做安全判斷,但每次應該只讓它看小範圍資料。 論文不建議再放一個 LLM 去讀完整網頁、email 或工具輸出,然後叫它決定所有事情;那樣它一樣可能被惡意文字影響。比較安全的做法是先把外部內容整理成格式固定、範圍很小的資料,例如有型別的執行紀錄(typed trace)或計畫 / 政策差異,再讓模型只回答一個明確問題:這次變更是否合理、是否超出原本任務。這樣可以降低攻擊者用一大段不可信內容把安全判斷帶歪的機會。
  • 人類審查(HITL, Human-in-the-loop)不是一句籠統的備案。 有些情況本來就模糊,例如什麼 email 算「緊急」、某個套件能不能安裝、某次高風險計畫變更是不是符合使用者真正意圖。這些點需要事先設計好人類介入流程,而不是等出事時才說「請人看一下」。
  • 基準測試太靜態,會讓安全感被高估。 測試時,如果任務都很短、流程都很固定,提示詞注入攻擊內容也都長得差不多,測試結果就可能看起來很安全,但其實沒有涵蓋真正的風險。比較接近真實世界的測試,應該包含動態任務、重新規劃、政策更新、針對同一個工具參數下手的攻擊,以及會針對防線調整的自適應攻擊內容(adaptive payload)。

適用的 9 項 AIDEFEND 防禦手法

AID-M-009.002
Authority Envelope & Action Risk Classification
極高
這是對應論文「plan / policy 分離」最核心的 AIDEFEND 控制。agent 開始工作前,系統應該先定義它的硬邊界:可以用哪些工具、碰哪些資料類型、進入哪些環境、造成哪些副作用、花多少預算、權限傳遞(delegation)可以往下傳幾層,以及哪些動作屬於高風險。這樣才能把論文的核心問題變成機器可檢查的問題:這次計畫或政策更新,還在核准範圍內嗎?
AID-H-019.004
Intent-Based Dynamic Capability Scoping
極高
論文第一個立場是:好用的 agent 需要動態重新規劃和更新政策,但這種彈性不能讓不可信內容擴大 agent 權限。Intent-Based Dynamic Capability Scoping 正好對應這件事:根據原始任務推導出每次請求或每個工作階段能用的最小工具範圍,並且在執行期強制落實。如果模型後來想呼叫更大的工具,就會被擋下來。
AID-H-019.002
Policy-Based Access Control
極高
論文提出的架構裡,政策執行器(policy enforcer)會拿目前政策來核准或擋下具體動作。Policy-Based Access Control 就是把這些判斷外部化成可檢查的政策邏輯,讓 agent 執行期不只依賴自然語言裡的「看起來合理」。
AID-H-019.006
Continuous Authorization Verification (Anti-TOCTOU)
動態重新規劃會帶來 TOCTOU(time-of-check to time-of-use,檢查時和真正使用時之間出現落差)風險:一開始看起來安全的動作,在環境改變或政策更新後,可能已經不安全。Continuous Authorization Verification 對應論文裡「每次重新規劃後仍要安全」的需求,要求每個敏感步驟在真正執行前,都用最新任務、政策、權限傳遞鏈和上下文再驗證一次。
AID-H-018.007
Dual-LLM Isolation Pattern
論文反覆提醒:負責安全判斷的模型,不應該直接看到攻擊者可控制的原始環境文字。Dual-LLM Isolation Pattern 已經對應這種設計:隔離模型負責讀不可信內容並輸出結構化結果;真正有工具權限的高權限模型,只接收驗證過的結構化資料。
AID-H-019.005
Value-Level Capability Metadata & Data Flow Sink Enforcement
論文談到政策不只要管工具能不能被呼叫,也要管資料流向,例如用資訊流控制(information-flow control)限制高機敏資料不能流到低信任位置。這項 subtechnique 把這件事落地:替執行期的值標上來源和機敏程度,再擋掉不該流向外部 HTTP、email、資料庫寫入、付款流程或其他敏感出口的資料。
AID-H-019.003
High-Impact Two-Channel Validator
論文裡的 plan / policy approver 是安全關鍵點。對於程式碼執行、基礎設施變更、付款或記憶寫入這類高影響動作,第二個獨立驗證通道可以在執行前檢查目標是否一致、證據是否足夠、政策是否允許、影響範圍是否被限制。這讓架構裡的核准層變成真正的安全邊界,而不是相信 executor 下一步一定合理。
AID-M-006.001
HITL Checkpoint Design & Documentation
論文第三個立場是:模糊情境無法完全靠演算法解決,必須把人類互動當成設計的一部分。HITL Checkpoint Design & Documentation 在 subtechnique 層級對應這件事:先定義哪些情況要停下來給人判斷、誰有權核准、逾時時預設拒絕,以及操作人員要照哪份 SOP 做,而不是臨時補一個人工審查。
AID-M-008
Automated Agentic Security Benchmarking
論文對基準測試的批評,很適合對應到這個 technique。防禦方不能只用短任務和固定提示詞注入字串測安全性;agent 安全基準測試應該加入多步驟任務、動態環境、重新規劃、政策更新、參數層級攻擊和自適應攻擊內容,讓發布檢查真的測到論文描述的失敗模式。

身為資安防禦者,我們應該這麼做

  • 把 agent 的計畫和政策變成明確、可檢查的設定或文件。每個 agent 工作流程都要寫清楚:計畫允許 agent 做什麼、政策允許哪些動作、誰能核准變更,以及哪個執行期元件負責擋下不合規動作。
  • 執行前先定義權限範圍(authority envelope):允許的工具、資料類型、環境、副作用、預算和權限傳遞深度。不要只給一份很大的靜態工具允許清單;要把範圍轉成每個工作階段自己的最小權限。
  • 把不可信的環境回饋放進隔離路徑。email、網頁、擷取文件和工具輸出,不應該直接交給有權限的模型或驗證器;應該先轉成有型別的執行紀錄、摘要或計畫 / 政策差異,再交給下一層判斷。
  • 每個敏感步驟都要重新驗證授權,尤其是重新規劃之後。讀檔、寫程式碼、安裝套件、付款、匯出資料、寫入記憶或修改基礎設施,都應該用目前任務、政策、權限傳遞鏈和風險等級重新檢查。
  • 在模糊或影響大的決策點加入人工審查。介面要清楚呈現準備執行的動作、證據、政策變更、牽涉資料和 rollback 路徑,讓審查者真的能判斷,而不是只看到一個含糊的「核准」按鈕。
  • 升級 agent 安全測試。把長時間任務、執行期錯誤、工具參數攻擊、自適應提示詞注入攻擊內容,以及政策更新嘗試加入回歸測試(regression tests);只要這些情境能繞過上面的系統邊界,就不應該放行發布。

結論

這篇論文重要的地方,是把間接提示詞注入重新定位成系統架構問題。模型當然重要,但真正耐用的防線在模型外圍:權限邊界、政策引擎、受限的模型判斷、資料流向控管、人類檢查點,以及能測到動態 agent 行為的基準測試。AIDEFEND  已經有對應的 techniques 和 subtechniques 可以覆蓋大部分環節,所以它不只是事後分類事件的知識庫,也可以當成把這篇論文架構落成實際控制措施的檢查清單。