遏制缺口:已部署的自主AI框架如何未能满足面向公众的安全要求
摘要
本文审计了LangChain、AutoGPT和OpenAI Agents SDK在架构安全保证方面的表现,发现它们均未原生符合遏制原则,并展示了内存投毒如何导致持续性失败;文中还引入了轻量级机制以消除此类攻击。
arXiv:2606.12797v1 公告类型: 新
摘要:能够自主调用工具、维持持久内存并执行多步骤计划的自主型大型语言模型系统,正越来越多地部署于面向公众的领域,包括政府服务、医疗分诊和财务咨询。我们探讨了用于构建这些系统的框架是否提供了架构层面的结构性安全保证。通过应用源自自主架构组合模型的六项遏制原则,我们对三个主流框架(LangChain、AutoGPT 和 OpenAI Agents SDK)进行了审计,发现它们均未原生符合任何一项原则。内存完整性——作为针对最普遍漏洞类别之一的防御手段——在三个评估框架中均未得到体现。我们通过实验验证了这些发现:在基于 LangChain 构建的模拟政府福利代理中,单次内存投毒写入会引发跨所有测试种子和后端的持久性定向破坏,导致目标申请人的错误拒绝率升至 88.9%。在复杂的五因素政策下,同一攻击在保持总体准确率的同时,将目标定向错误拒绝率提高了 3.5 倍,使得这种破坏难以通过标准监控手段检测。随后,我们引入了两种轻量级遏制机制:内存完整性验证器和策略门,它们以亚毫秒级开销(每次调用 <0.2 毫秒)消除了这两种攻击向量。我们得出结论,当前的自主框架生态系统可能尚未满足面向公众部署时默认安全的要求,并概述了优先的架构干预措施,以实现高风险、具有社会影响力的应用中的可信部署。
查看缓存全文
缓存时间: 2026/06/12 08:53
# 部署的自主式AI框架如何在面向公众的安全要求中失效
来源:https://arxiv.org/html/2606.12797
###### 摘要
能够自主调用工具、维护持久记忆并执行多步骤计划的自主式大语言模型系统,正越来越多地部署在面向公众的领域,包括政府服务、医疗分诊和财务咨询。我们询问用于构建这些系统的框架是否在架构层面提供了结构性的安全保障。应用从自主式架构的组成模型中推导出的六项遏制原则,我们审计了三个主流框架(LangChain、AutoGPT 和 OpenAI Agents SDK),发现它们均未原生遵守任何一项原则。内存完整性——针对最常见漏洞类别之一的防御——在所评估的三个框架中均未被观察到。我们通过实验验证了这些发现:在一个基于 LangChain 构建的模拟政府福利代理中,一次内存投毒写入会在所有测试的种子和后端上引发持久性的定向破坏,将目标申请人的错误拒绝率提高到 88.9%。在一个复杂的五因素政策下,同一攻击在保持总体准确性的同时,将目标错误拒绝率提高了 3.5 倍,使得该破坏通过标准监控难以检测。随后,我们引入了两种轻量级遏制机制:一个内存完整性验证器和一个策略门,它们以亚毫秒级开销(每次调用 <0.2 毫秒)消除了这两种攻击向量。我们得出结论,当前的自主式框架生态系统可能尚未满足面向公众部署所期望的默认安全标准,并概述了优先的架构性干预措施,以实现在高风险、具有社会影响力的应用中的可信部署。
自主式 AI,LLM 安全性,可信 AI,框架审计,遏制
## 1 引言
自主式 AI 系统正越来越多地部署在面向公众的领域,如政府服务、医疗和金融(Xu et al., 2024 (https://arxiv.org/html/2606.12797#bib.bib29))。与传统 LLM 聊天机器人不同,这些系统调用工具、维护持久记忆,并在多步骤范围内自主行动(Yao et al., 2022 (https://arxiv.org/html/2606.12797#bib.bib1))。一个被破坏的推理周期可以通过工具执行传播到内存中,从而毒害后续交互,并可能导致持续的系统级故障,带来现实世界的后果。
AI 安全社区主要关注模型*说什么*,例如输出毒性、偏见和幻觉,而可信 AI 社区则强调行为评估和公平性。然而,两者都没有系统地解决一个更基本的问题:*用于构建自主式 AI 系统的框架是否在架构层面提供了结构性的安全保障?* 这个问题与模型级安全是正交的;它关系到周围的系统是否在感知与核心阶段(推理、执行和内存)之间强制执行可靠的界限,每个自主式行动都通过这些核心阶段传播。虽然先前的工作主要列举了 LLM 代理中的攻击类型,但尚不清楚为什么这些漏洞在不同框架和模型后端之间持续存在。我们认为根本原因是结构性的:在架构边界上缺乏强制执行的遏制。
本文做出四项贡献。首先,据我们所知,我们提出了第一种审计方法,将形式化的遏制原则操作化为自主式框架的可复用合规矩阵(第 3 节 (https://arxiv.org/html/2606.12797#S3))。其次,审计 LangChain(LangChain AI, 2024 (https://arxiv.org/html/2606.12797#bib.bib26))、AutoGPT(Significant Gravitas, 2024 (https://arxiv.org/html/2606.12797#bib.bib27))和 OpenAI Agents SDK(OpenAI, 2024 (https://arxiv.org/html/2606.12797#bib.bib28))表明,我们没有观察到任何一项原则的原生合规性(第 4 节 (https://arxiv.org/html/2606.12797#S4))。第三,我们展示了单次内存投毒写入可以在五个后端上引发定向破坏,并且在五因素政策下,通过聚合指标难以检测(第 5 节 (https://arxiv.org/html/2606.12797#S5))。第四,两种确定性干预措施以亚毫秒级开销显著降低了攻击成功率(第 5 节 (https://arxiv.org/html/2606.12797#S5))。
## 2 背景:组合问题
### 2.1 自主式系统作为组合流水线
一个自主式 LLM 系统在一个递归循环中组合四个功能阶段(Yao et al., 2022 (https://arxiv.org/html/2606.12797#bib.bib1); Masterman et al., 2024 (https://arxiv.org/html/2606.12797#bib.bib4)):一个*感知*函数 \(P\) 处理外部输入,一个*推理*(行为)函数 \(B\) 使用当前输入和持久记忆 \(m_t\) 规划行动,一个*执行*函数 \(E\) 调用工具,以及一个*内存更新*函数 \(\mathcal{U}\) 将结果写回持久状态。每个时间步的决策到动作的映射为:
\[
\Phi(o_t, m_t) = E\!\left(B\!\left(P(o_t),\, m_t\right)\right),
\tag{1}
\]
其中 \(\Phi\) 产生执行的动作,随后的状态通过 \(\mathcal{U}\) 被整合。
各个阶段在孤立状态下可能是安全的,但如果没有层间隔离,它们的组合就会变得脆弱(Christodorescu et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib5))。被破坏的输出跨阶段传播,从感知到推理、执行和内存,影响后续循环。图 1 (https://arxiv.org/html/2606.12797#S2.F1) 展示了这个带有每个边界遏制门的流水线。
参见图注
图 1:带有层边界遏制门(G1–G3)的组合自主式架构。外部输入 \(O_t\) 和内存状态 \(m_t\) 流经感知、推理、执行和内存更新。门在每次转换时强制执行六项遏制原则(P1–P6)。运行时监控(P6)覆盖所有阶段。
### 2.2 执行遏制
安全性要求对于所有 \(t\),\(\Phi(o_t, m_t) \in \mathcal{C}\),其中 \(\mathcal{C} \subseteq \mathcal{A}\) 是一个受策略约束的安全动作空间 \(\mathcal{A}\)(Saltzer and Schroeder, 1975 (https://arxiv.org/html/2606.12797#bib.bib22))。我们将此条件称为*执行遏制*。当 \(E\) 直接将 \(B\) 的输出转发到运行时而不进行此类投影时,系统处于“无遏制的自主”状态,类似于以内核权限执行用户空间代码(Klein et al., 2009 (https://arxiv.org/html/2606.12797#bib.bib25))。这类似于系统安全中的参考监视器概念和约束控制理论中的投影算子。
### 2.3 六项遏制原则
我们识别出六项遏制因素,当应用于层接口时可确保安全性。这些构成了我们审计框架的基础:
1. 1. 推理-执行分离(P1):策略门 \(\pi\) 介于规划和执行之间,使得代理无法实施其设计的每一个计划。只有满足 \(E(\pi(u_t)) \in \mathcal{C}\) 的动作才能通过门。
2. 2. 能力范围界定(P2):每个会话被赋予一个有界令牌 \(T_k\),该令牌定义了可以使用哪些工具、参数范围、速率限制和过期时间。代理根本不可能突破令牌设置的这些边界。
3. 3. 内存完整性(P3):任何写入在到达长期记忆之前,其有效性都会由完整性函数 \(\mathcal{I}\) 测试。未通过测试的写入将被丢弃。
4. 4. 层转换验证(P4):在执行数据遍历的所有接口(不仅仅是输入接口 \(P \to B, B \to E, E \to \mathcal{U}\))执行安全检查。因此,即使恶意用户能够通过一个接口,他们仍然不能保证通过其他接口。
5. 5. 认证通信(P5):代理之间交换的所有消息应包含可验证的凭据,如数字签名。任何没有适当验证凭据的消息将被隔离。
6. 6. 运行时监控(P6):最后,异常检测器监控执行路径的发展。如果检测到异常,它会激活遏制以减轻其影响。
我们在下面形式化了这些原则与遏制之间的关系。
###### 定理 1(遏制充分性)
如果一个自主式系统满足 P1(策略门控执行)和 P3(经验证的内存写入),那么没有单步内存投毒攻击能够诱导出持续的策略违规。
###### 证明概要
P3 保证 \(\mathcal{I}\) 会拒绝任何对抗性写入 \(\delta\),因此 \(m_{t+1} = m_t\) 保持不变。P1 保证期望 \(E(\pi(u_t))\) 属于 \(\mathcal{C}\)。由于内存是安全的且执行受到控制,任何违反安全的单步轨迹都不会被传播。我们的实验证实:两者都激活时,所有后端的破坏率从 1.000 降至 0.000(表 6 (https://arxiv.org/html/2606.12797#S5.T6))。∎
###### 命题 1(需要联合执行)
单独的 P1 或 P3 都不足以实现遏制。在保持 P1 的同时放弃 P3 会导致内存破坏,从而导致未来推理输入产生偏差。在保持 P3 的同时放弃 P1 允许在一个周期内执行不安全动作。
实验 1 和 3 提供了实证证据:移除内存验证(P3)导致完全破坏(表 3),而移除策略门(P1/P2)导致完全绕过工具(表 4)。
## 3 审计方法
框架选择。对于我们的分析,我们将考虑最常用的代理部署系统——LangChain Agents(LangChain AI, 2024 (https://arxiv.org/html/2606.12797#bib.bib26))、AutoGPT(Significant Gravitas, 2024 (https://arxiv.org/html/2606.12797#bib.bib27))和 OpenAI Agents SDK(OpenAI, 2024 (https://arxiv.org/html/2606.12797#bib.bib28))。
证据来源。本研究所用的来源包括官方文档、源代码审查以及已发布的安全研究(Christodorescu et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib5); Ferrag et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib15))。
评分标准。✓ = 原生默认(无需配置即启用);✓*=需要显式配置;✗ = 缺失。我们关注*默认行为*(Christodorescu et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib5); Raza et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib8))。
可靠性。通过让两名评分员对所有 18 个框架-原则对进行评分来确保可靠性(Cohen's κ=0.81)。评分员之间的冲突通过第三名评分员的讨论解决。
局限性。评分标准捕获的是机制的*存在性*,而非实现深度或运行时有效性。评估是时间点的,框架可能会演变。运行时测试在第 5 节 (https://arxiv.org/html/2606.12797#S5) 中呈现。
## 4 结果:合规矩阵
表 1 (https://arxiv.org/html/2606.12797#S4.T1) 展示了完整的合规矩阵。审计揭示了四种系统模式。
表 1:合规矩阵:生产性自主框架对六项遏制原则的合规情况。✓ = 原生默认;✓*=需要配置;✗ = 缺失。没有框架在任何原则下达到 ✓。
模式 1:零原生合规性。在三个评估框架中,我们没有观察到任何原则达到 ✓ 标准。每个遏制机制都必须显式启用或缺失。
模式 2:普遍的内存完整性失败。P3(内存完整性)在所有三个框架中评分均为 ✗,尽管内存投毒是近期自主式 AI 安全调查中最广泛记录的漏洞类型之一(Deng et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib20); Patlan et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib12); Wu et al., 2025 (https://arxiv.org/html/2606.12797#bib.bib21))。这代表了面向公众系统中最关键的差距。
模式 3:安全是可选项。现有的安全措施需要显式配置,而不是默认启用,违反了“默认安全”原则(Saltzer and Schroeder, 1975 (https://arxiv.org/html/2606.12797#bib.bib22)),并造成了一个可预测的部署鸿沟——特别是对于构建面向公众系统的非专家开发者而言。
模式 4:自主性与合规性呈负相关。AutoGPT(5 项不合规),LangChain(2 项不合规),OpenAI SDK(1 项不合规)。设计为高度自主的架构拥有最少的障碍。这是因为设计权衡倾向于自主性而非约束,因此安全约束没有严格执行。
## 5 实验验证
我们在第 4 节 (https://arxiv.org/html/2606.12797#S4) 的审计揭示了安全机制的缺失。我们验证了它们的缺失允许攻击利用以下漏洞:内存完整性(P3)以及推理与执行之间的分离(P1/P2)。
参见图注
图 2:自主式流水线中的攻击传播。顶部:良性路径,动作保持在 \(\mathcal{S}\) 内,内存完好。中部:没有遏制时,扰动 \(\delta\) 跨阶段传播,毒化内存并导致下游漂移。底部:有遏制时,策略门(G2)在执行或内存更新之前阻止超出范围的动作。
### 5.1 实验设置
场景。一个基于 LangChain 的对话代理处理福利申请,并根据收入和家庭规模做出批准或拒绝的决定。这些原则反映了经典的安全概念,如最小权限和纵深防御。
数据集。250 条跨五个区域的合成福利申请(每个区域 50 条),带有确定性资格规则(收入 < $40,000 *且* 家庭规模 > 2 ⇒ 批准)。另外 200 条对抗性条目针对两个攻击面:100 个内存投毒负载和 100 个工具访问攻击。
模型。Qwen-2.5 3B-Instruct 通过 Ollama 在本地服务。所有实验使用三个随机种子(42、7、123)以确保可重复性。
基线。表 2 (https://arxiv.org/html/2606.12797#S5.T2) 显示代理在干净条件下所有种子都达到了高准确率,表明后续的性能下降归因于攻击而非模型错误。
表 2:干净基线性能(无攻击)。确定性规则后端确认代理流水线在对抗性干预之前是正确的。种子 7 的较低基线(0.750)反映了 3B 模型在边界案例上的固有随机性;值得注意的是,攻击在此种子上仍实现 1.000 的破坏率,确认了漏洞与基线性能无关。
干预措施。我们实现了两种轻量级遏制机制:(1)一个*内存完整性验证器*(P3),它拦截ConversationBufferMemory.save_context,通过确定性正则表达式检查来源出处、模式符合性和人口统计目标模式——被拒绝的写入被静默丢弃;(2)一个*工具调用策略门*(P1/P2),它在执行前强制执行基于拒绝列表的允许名单(针对工具名称)和路径规范化(针对文件参数)。两种干预措施分别由算法 1 (https://arxiv.org/html/2606.12797#alg1) 和 2 (相似文章
具体的AI安全问题
OpenAI、伯克利和斯坦福的研究人员共同撰写了一篇基础性论文,指出了现代AI系统中的五个具体安全问题:安全探索、对分布偏移的鲁棒性、避免负面副作用、防止奖励黑客和可扩展的监督。
我们尚未讨论的 AI 代理中的显性安全漏洞:输出即权威的那一刻
本文强调了 AI 代理中的一项关键安全漏洞,即输出执行绕过了适当的权限检查,主张在授予受信任的上下文或密钥之前设置“外部准入”门禁。
AI代理是否正在创造一个新的运行时供应链攻击面?
讨论AI代理安全作为一个超越提示注入的运行时供应链问题,强调来自不可信数据、工具和反馈循环的风险,并质疑开发者如何执行边界。
误判鸿沟:当记忆投毒在自主AI系统中看似模型故障
本文识别了多智能体AI流水线中的一种结构性缺陷,即记忆层攻击可能被误判为模型失调,形式化定义了语义规范漂移(SND),并提出反事实组合测试(Counterfactual Composition Testing)和持久记忆信息流控制(Memory-Persistent Information-Flow Control)作为防御措施。
AI 代理最危险的部分始于其获得执行权限之时
本文强调了 AI 代理获得基础设施执行权限所带来的关键风险,认为如果没有外部准入层来防止灾难性故障,现有的安全护栏是不够的。