外观
Agent 自摘要后安全护栏的存活验证
摘要
长会话 Agent 会把历史压缩成摘要,但摘要中仍出现安全规则文本,不代表规则仍能约束行为。该研究区分三种失效:规则完全丢失、条件谓词被概括掉,以及文本保留但后续决策不再触发。
作者使用两种重放模型和外部真值检查单次压缩周期,说明 presence check 会制造假安全。证据来自作者实验,尚无独立复现。
核心创新与差异
研究把“摘要包含规则”与“规则在触发条件下生效”分开,要求用行为重放而不是字符串存在性验证护栏。
威胁模型与攻击链
攻击者或普通长任务向上下文加入大量信息,触发压缩。摘要器保留概括性安全措辞,却删除主体、对象或条件,后续 Agent 因此允许原本应拒绝的动作。
攻击方法与复现材料
本地测试夹具:
text
history = [rule_with_predicate, benign_filler, trigger_event]
summary = compact(history)
assert contains(summary, "safety") # 弱检查
assert replay(summary, trigger_event) == "deny" # 强检查不得连接真实高权限工具。检测信号是规则文本存在但行为判定改变。
实验设计与实际过程
作者对压缩前后状态执行配对重放,用外部真值而非模型自评判断规则是否存活,并区分不同失效类别。
关键结果与实际影响
结果显示单次压缩即可造成治理语义退化,单纯检查关键字会漏报。影响包括审批、数据边界和工具调用规则随会话长度悄然失效。
防护措施与验证方法
关键策略应存放在不可压缩控制面,摘要只携带引用和状态。每次压缩后运行规则触发回归,并记录策略版本、谓词和拒绝原因。
局限与待验证问题
研究只覆盖单次压缩和有限 Agent;多轮压缩、不同摘要器及真实工具副作用需要进一步验证。