ASI03:身分與權限濫用
Identity and Privilege Abuse
說明
身分與權限濫用會利用 Agent 中動態的信任與委派關係,透過操弄委派鏈、角色繼承、控制流程與 Agent 上下文來提升存取權限並繞過控制;這裡的上下文包含跨互聯系統的已快取的憑證或對話歷史。在此語境中,身分同時指 Agent 所定義的角色設定,以及任何代表該 Agent 的驗證資料。Agent-to-Agent 信任或繼承而來的憑證可能遭利用,以提升存取權限、劫持權限或執行未經授權的動作。
這項風險源自以使用者為中心的身分系統與 Agentic 設計之間的架構落差。若 Agent 沒有一個獨立且受到治理的身分,就會存在歸因缺口,使真正的最小權限無法被強制執行。此處的身分同時包含 Agent 被指定的角色設定,以及代表它的任何驗證資料,例如 API 金鑰、OAuth 權杖或委派的使用者工作階段。
這與 ASI02(Tool Misuse) 的情境不同;ASI02 指的是一個安全主體在既有授權範圍內,以非預期或不安全方式誤用自己的工具。
身分與權限濫用是 Excessive Agency(LLM06:2025) 在 Agentic 系統中的演進。它經常利用 Prompt Injection(LLM01:2025);由於 Agent 權限、工具整合與多 Agent 系統的存在,其影響可能被放大,甚至超越 Sensitive Information Disclosure(LLM02:2025),直接破壞 Agent 可觸及之系統與資料的機密性、完整性與可用性。
在 OWASP ASI Threats and Mitigations 中,本項一對一對應 T3: Privilege Compromise;在 OWASP AIVSS 中,則對應 Core Risk 2: Agent Access Control Violation。
常見漏洞範例
- 未限縮範圍的權限繼承(Un-scoped Privilege Inheritance) — 高權限管理者在委派工作時,沒有套用最小權限的範圍限制,常見原因是方便性或架構限制,因而將完整存取上下文一併傳遞。原本職責狹窄的工作 Agent 因此取得過多權限。採用預設權限的低程式碼或無程式碼 Agent,例如預設具有不受限制的網際網路存取權,也可能繼承超出預期的權限。
- 基於記憶的權限保留與資料外洩(Memory-Based Privilege Retention & Data Leakage) — Agent 為了上下文而快取憑證、金鑰或已擷取資料,之後又加以重用。若記憶沒有在不同任務或使用者之間分段或清除,攻擊者便可能指示 Agent 重用已快取的機密資訊、提升權限,或把先前安全工作階段的資料洩漏到較弱的工作階段。
- 跨 Agent 信任利用(混淆代理人)(Cross-Agent Trust Exploitation(Confused Deputy)) — 在多 Agent 系統中,Agent 經常預設信任內部請求。遭入侵的低權限 Agent 可以把看似有效的指令轉送給高權限 Agent,而後者在未重新確認原始使用者意圖的情況下執行,因而誤用其較高權限。
- Agent 工作流程中檢查與使用之間的時間差(TOCTOU) — 權限可能在工作流程開始時通過驗證,但在真正執行前已變更或過期。Agent 仍以過時的授權繼續執行,進而進行使用者已無權核准的動作。
- 合成身分注入(Synthetic Identity Injection) — 攻擊者使用未經驗證的描述資訊(例如「Admin Helper」)冒充內部 Agent,以取得繼承而來的信任,並用捏造的身分執行高權限動作。
攻擊情境範例
- 委派權限濫用(Delegated Privilege Abuse) — 財務 Agent 將工作委派給「DB query」Agent,卻把自己的全部權限一併傳遞。攻擊者操弄查詢提示詞,利用繼承的存取權限外洩人資與法務資料。
- 基於記憶的權限提升(Memory-Based Escalation) — IT 管理 Agent 在修補過程中快取 SSH 憑證。之後,一名非管理員使用者重用同一工作階段,並指示 Agent 使用那些憑證建立未經授權的帳號。
- 跨 Agent 信任利用(Cross-Agent Trust Exploitation) — 一封偽裝成來自 IT 的特製電子郵件,指示郵件分類 Agent 要求財務 Agent 將資金移轉至特定帳戶。分類 Agent 轉送指令後,財務 Agent 因信任內部 Agent,未經驗證便處理了詐欺付款。
- 跨 Agent 裝置代碼網路釣魚(Device-code phishing across agents) — 攻擊者分享一個裝置代碼連結,瀏覽 Agent 跟隨該連結;另一個「helper」Agent 完成代碼驗證流程,使受害者租戶綁定至攻擊者的範圍。
- 工作流程授權偏移(Workflow Authorization Drift) — 採購 Agent 在採購流程開始時驗證核准。數小時後,使用者的支出上限被降低,但工作流程仍以舊授權權杖繼續,完成此時已未獲授權的交易。
- 偽造 Agent 角色設定(Forged Agent Persona) — 攻擊者在內部 Agent2Agent 登錄服務註冊一個偽造的「Admin Helper」Agent,並提供偽造的 Agent 卡片。其他 Agent 因信任該描述資訊,將高權限維護工作路由給它。由攻擊者控制的 Agent 隨後在被假定為內部信任的情況下發出系統層級命令。
- 身分共享(Identity Sharing) — Agent 代表某位使用者(通常是建立它的人)取得系統存取權限,之後又允許其他使用者透過呼叫該 Agent 的工具,隱含地使用相同身分。
預防與緩解指南
- 強制限定任務範圍與有效時間的權限(Enforce Task-Scoped, Time-Bound Permissions) — 每個任務簽發短生命週期、窄範圍的權杖,並以權限邊界限制權利;使用各 Agent 獨立的身分與短生命週期憑證(例如 mTLS 憑證或限縮範圍的權杖),以縮小影響範圍、阻擋委派濫用與維護時段攻擊,並緩解未限縮範圍的權限繼承、無主權限與反射迴圈權限提升。
- 隔離 Agent 身分與上下文(Isolate Agent Identities and Contexts) — 每個工作階段使用權限與記憶分離的沙箱,並在任務之間清除狀態,以防止基於記憶的權限提升,並降低跨儲存庫資料外洩。
- 要求每個動作都重新授權(Mandate Per-Action Authorization) — 透過會檢查外部資料的集中式政策引擎,重新驗證每一個高權限步驟,以阻止跨 Agent 信任利用與反射迴圈權限提升。
- 權限提升時要求人工介入(Apply Human-in-the-Loop for Privilege Escalation) — 高權限或不可逆動作要求人工核准,作為可阻止基於記憶的權限提升、跨 Agent 信任利用與維護時段攻擊的安全網。
- 定義意圖(Define Intent) — 將 OAuth 權杖綁定至已簽章的意圖,其中包含主體、對象、目的與工作階段。若權杖所綁定的意圖與目前請求不符,就拒絕使用。
- 評估 Agentic 身分管理平台(Evaluate Agentic Identity Management Platforms) — 主要平台正把 Agent 整合進身分與存取管理系統,將其視為受管理的非人類身分,具備限縮範圍的憑證、稽核軌跡與生命週期控制。例子包括 Microsoft Entra、AWS Bedrock Agents、Salesforce Agentforce、Workday 的 Agentic System of Record(ASOR)模型,以及 Google Vertex AI 中類似的新興模式。
- 將權限綁定至主體、資源、目的與有效期間 — 上下文切換時要求重新驗證。除非重新驗證原始意圖,否則阻止 Agent 之間的權限繼承。當閒置或出現異常時自動撤銷權限。
- 偵測委派與傳遞權限(Detect Delegated and Transitive Permissions) — 監控 Agent 何時透過委派鏈間接取得新權限。若低權限 Agent 在多 Agent 工作流程中繼承或被交付較高權限範圍,應加以標記。
- 偵測異常的跨 Agent 權限提升與裝置代碼網路釣魚流程 — 監控 Agent 何時要求新的範圍,或在原始已簽章的意圖之外重用權杖。
參考資料
- https://research.aimultiple.com/agentic-ai-cybersecurity/
- https://www.docker.com/blog/mcp-horror-stories-github-prompt-injection/
- https://css.csail.mit.edu/6.858/2015/readings/confused-deputy.html
- 15 Ways to Break Your Copilot, BHUSA 2024
- NVD - cve-2025-31491
原作:OWASP Top 10 For Agentic Applications 2026
專案:OWASP Gen AI Security Project - Agentic Security Initiative
授權:CC BY-SA 4.0
本翻譯為非官方繁體中文版本,並依 CC BY-SA 4.0 授權釋出。