该论文针对自主 AI 智能体(AI Agent)在工具调用场景下的安全问题,提出了一种名为 Sapien 的「有状态策略引擎」。研究背景是:当前主流的上下文安全防御思路,是先让模型根据当前任务即时合成一份任务专属策略,再用这份策略去约束智能体的工具调用,从而阻止其执行越权或异常动作。论文指出的核心缺陷在于,这类做法本质上是「无状态」的——在真实的多步任务中,某一次工具调用是否合法,往往取决于智能体此前已经执行过哪些操作、以及它已经获得了哪些信息。例如某个查询或写入动作单独看没有问题,但若出现在未经过前置校验步骤的位置上,就构成风险。忽略历史状态会让策略要么过度宽松(放行危险序列),要么过度收紧(阻断正常的多样化任务流程)。Sapien 的设计是把策略建模为一个带状态的序列约束系统:策略以正则表达式为核心表达工具调用序列,并在其上扩展了三类机制——(1) 有状态谓词(stateful predicates),使某条调用规则是否成立取决于之前调用累积的状态;(2) 延迟策略生成(deferred policy generation),允许在任务推进过程中再确定后续允许的动作,而不是在任务开始时就一次性固化;(3) 作用域化的语义检查(scoped semantic checks),只在必要范围内对参数内容做语义层面的校验,以兼顾安全与效率。实验层面上,论文报告 Sapien 的安全约束对正常任务效用的影响很小,与完全不设约束的智能体相比效用仅下降几个百分点;而在智能体被完全劫持(即攻击者完全控制模型输出)的最坏假设下,Sapien 的策略仍能排除 AgentDojo 基准上 93%–95% 的攻击,在 Toolathlon 上排除 62%–85% 的攻击;在长周期任务上,其拦截效果约为单纯工具白名单(tool allowlist)方法的两倍。论文的贡献可概括为:形式化了「有状态上下文策略」这一问题,给出可执行的策略引擎实现,并在两个智能体安全基准上量化了安全性与可用性的权衡。适合从事 LLM Agent 安全、Agent 运行时防护、权限与工具调用治理方向的研究者与工程团队阅读。
💡 推荐理由: Agent 的越权动作是当前 LLM 应用最主要的落地风险之一,而主流防御仍停留在无状态白名单层面。该工作把有状态序列约束引入执行时策略,并给出在完全失陷假设下仍可拦截多数攻击的量化结果,对构建 Agent 运行时防护与最小权限执行框架有直接参考价值。
🎯 建议动作: 研究跟进,纳入内部 Agent 运行时防护方案评估