Bounded Agents: Delegation Security for Multi-Agent AI Systems
Xabier Muruaga
cs.AI, cs.CR
2026-08-17
APC 在模型外做会话级授权:组合闭包把 AgentDojo 四域外泄从 75–100% 打到 0%,544 起 InjecAgent 数据窃取全拦,合法任务成功率掉 8.6–13.9 个百分点。
企业把 LLM agent 接上工具、子 agent 和云 API 之后,授权模型还停在一次请求一次判定:会话开始时权限写死,每一步单独看,不管前面做过什么。三种失败都发生在权限之内。agent 做了和委托任务无关的事;子 agent 拿到的授权没有逐跳收窄;两个都允许的动作,读机密文档再发外邮,组合成外泄。
提示注入只在 agent 有权执行那些动作时才构成真实风险。APC 把这个问题改写成:模型被攻破时,授权架构还拦不拦得住。模型对齐解决不了组合外泄。
APC 把一次任务做成一条主体链:人、编排器、子 agent、工具。基础设施签发一份授权信封,沿链只收窄不放宽。作用域是四元组:资源、动作类型、数据分级、禁止组合。委托预算覆盖深度、爆炸半径、不可逆操作、敏感级、跨域组合和算力上限,下游只能减少。
每次提议动作要过六项合取检查,全过才执行:
组合闭包是核心。成对限制拦住「读 + 外发」;有序 k 元组拦住「读 → 中间写 → 外发」这种绕过成对检查的分步外泄。判定在模型外面的 PEP(策略执行点,卡在工具或 MCP 网关)和 PDP(策略决策点)做,模型输出改不了信封。
评测 3,154 条,含 InjecAgent、ASB、AgentDojo。被攻破模型设定把基准的真实攻击工具调用插在第一次合法调用之后,用来测基础设施而不是测模型硬不硬。
| 设置 | 无防御 | APC |
| AgentDojo 外泄(四域) | 75–100% | 0% |
| InjecAgent 数据窃取(544) | 100% | 0% |
| InjecAgent 直接伤害 | 100% | 60.4% |
| ASB 破坏性攻击 | 100% | 0% |
| 破坏类 ASR | 38.6% | 4.0% |
| 操纵类 ASR | 90.5% | 12.1% |
合法任务看 949 对任务-注入,模型是 Claude Sonnet 4.6。严格模式成功率掉 13.9 个百分点,交互审批模式掉 8.6 个百分点。授权路径延迟在空闲机上 p99 为 0.24 ms。X 里去掉一对限制,数据窃取 ASR 从 0% 回升到 39.9%。残留 18/609 起成功攻击里,14 起是攻击动作类型和合法任务重叠,4 起缺了 (read, delete) 这对限制。自适应套件 43 个变体里,24 个瞄向禁止结果,23 个被拦,唯一放过的是会话拆分,这是按设计承认的跨会话盲区。
部署侧真正能买的是:就算模型被注入、甚至被当成完全妥协,外泄这类必须组合才成立的攻击可以被策略挡住。延迟可以忽略。代价是合法任务掉几个点,以及每个安全域要写 3–9 对限制加若干 k 元组。APC 不替代 OAuth 或 RBAC,是叠在上面的会话层。
对已经在 MCP 网关做工具闸门的团队,这是可落地的架构,不是又一次对齐微调。
组合可靠性定理要求限制集 X 完备、请求串行入场;并发子 agent 必须把组合检查串行化。直接伤害仍有 60.4%,单步且在权限内的攻击要靠参数级校验,APC 故意不做。动作分类粒度靠专家,过粗就会把合法写操作和攻击写成同一类。评测全是合成基准,没有生产流量。被攻破模型设定把攻击插在第一步之后,不覆盖多轮穿插,也不覆盖根据拒绝反馈改策略的对手。定理没有机器证明。跨会话攻击不在范围里。