本文提出了一种名为 AID-Guard 的状态化授权闭合协议,用于解决工具型 AI 代理在委派任务时出现的授权与效果不一致问题。传统授权机制通常在请求准入时一次性完成,但代理在执行过程中,提供方状态、投递、重试和恢复等阶段会不断变化,导致已批准的请求可能在提交前被修改,或因响应丢失而触发重复效果。AID-Guard 的核心思路是建立从授权到效果的闭环:在提交时重新验证已批准的请求和提供方状态,在歧义情况下仅保留一个预留(reservation),并且在获得最终结果或经过递送围栏(delivery fence)认证无效果之前,不允许释放或产生后继效果。对于受支持的提供方合约,该协议保证在重试和恢复场景下,一个预留最多产生一个效果。研究者使用 Python/SQLite 实现了原型,并在声明的回环 MCP 域上进行了实验:13 次实时变更未产生未授权效果,三个并发历史满足线性一致性,证据包支持公开验证和重放。在 Stripe 提供方合约的 210 次试验中,结果均与预先声明一致;在 Stripe 和 Resend 上,40 个终止-后继调度、30 个重叠竞争和 10 个崩溃恢复调度均未出现重复效果。在完全提案者失陷的情况下,AID-Guard 阻止了 44/44 的攻击,并接纳了 44/44 匹配的合法提案。其严格精确清单(exact-manifest)模式将良性效用降低了 35.4 至 43.8 个百分点,而引入类型化边界(typed frontier)后恢复了 9-10 次完成且未观察到不安全效果。组合研究阻止了 20/20 的准入后生命周期攻击,并保留了 8/8 的合法或精确重试执行。结果表明,在所评估的效果路径清单、提供方合约和故障调度范围内,授权到效果的绑定是可行的。该工作适合关注 AI 代理安全、授权系统设计和形式化方法的蓝队安全研究人员阅读。
💡 推荐理由: AI 代理的授权不能止步于准入,执行生命周期中的状态变化可能绕过原始意图。AID-Guard 提供了首个统一状态化授权协议,为代理安全审计和授权控制提供了新思路。
🎯 建议动作: 研究跟进