别只盯着提示词:劫持智能体的推理与记忆
2026 年 4 月的论文 JailAgent 在不改动用户提示词的前提下,通过扰动智能体的推理轨迹与记忆检索,诱导其发起恶意工具调用。提示词从来都不是攻击面的全部。
这是什么?
大多数提示词注入防御都建立在一个假设之上:危险来自输入。给用户轮次、检索到的文档、工具输出打标签;判定哪些片段是”指令”、哪些是”数据”;过滤掉有害的部分。最近两篇红队论文指出,这种框架忽视了现代智能体真正作出行动决策的位置。
2026 年 4 月 7 日,Yanxu Mao、Peipei Liu、Tiehan Cui 及合作者发布了 Stop Fixating on Prompts: Reasoning Hijacking and Constraint Tightening for Red-Teaming LLM Agents(arXiv:2604.05549)。他们的框架 JailAgent 在完全不修改用户提示词的情况下诱导智能体执行恶意操作。它作用于提示词之下的层面:智能体的推理轨迹及其记忆检索。
JailAgent 是 UDora(arXiv:2503.01908,首次发布于 2025 年 2 月 28 日,最新修订于 2025 年 11 月 12 日;Jiawei Zhang、Shuang Yang、Bo Li)的后继工作。UDora 提出了核心思想:LLM 智能体”在执行最终动作前会进行大量推理或规划”,因此推理轨迹本身就是攻击者可以引导模型的一个位置。这两篇工作向防御者传达了同一个信息:推理链与记忆是攻击面的一部分,而非中立的内部机制。
工作原理
本节描述该技术的形态,而非可运行的攻击。此处不复现任何 payload、触发字符串或优化代码;需要方法细节者请查阅原论文。
根据其摘要,UDora 的机制是一个循环:
1. 在任务上运行智能体,捕获其推理轨迹。
2. 在该轨迹中识别出:施加微小扰动便能
将智能体推向目标(恶意)动作的位置。
3. 将被扰动的推理作为替代目标进行优化。
4. 迭代,直到智能体调用所选工具 / 执行所选动作。
攻击者从不对智能体说”忽略你的指令”。相反,它推动智能体自身的中间推理,使有害的工具调用看起来正是模型本就要走向的下一步。
JailAgent(2026 年 4 月)将这一思路一般化,并彻底去除了对提示词改动的依赖。据作者所述,其三个阶段为:
- Trigger Extraction(触发提取)——定位智能体在决定行动时所依赖的、位于上下文或记忆中的具体线索。
- Reasoning Hijacking(推理劫持)——实时、自适应地将推理轨迹引向攻击者目标,而非使用固定模板。
- Constraint Tightening(约束收紧)——通过优化的目标函数收窄智能体的选项空间,使不安全动作成为阻力最小的路径。
作者报告称,这一方法可在不同模型与场景间迁移。机制比任何单一数字都更重要:由于操纵发生在推理—记忆路径上,只检查提示词的护栏可能将输入判定为干净,却仍眼看着智能体走向行动。
为何重要
由此引出两个实际后果。
首先,输入侧分类器并非完整的控制手段。 一种对用户消息和检索文本评分、查找”类指令”内容的防御,可能给出干净的判定,而真正的失陷却发生在规划阶段。这与本季的理论结果一致——参见上下文完整性与数据流不等于权限——它们论证了数据与指令的分离不可能是全部答案。
其次,记忆是活跃的攻击面。 当智能体检索过往”经验”以进行规划时,被投毒或被攻击者塑造的记忆条目就成为触发器,这与基于记忆的工具劫持从投毒一侧所展示的相呼应。拥有长期记忆的智能体,携带着自己未来的触发器。
风险恰恰集中在智能体最有用的地方:具有真实副作用、工具丰富的部署——发送邮件、转移资金、执行代码、调用内部 API。
防御
你无法”修补”模型在行动前会推理这一事实。但你可以让推理对安全性不再那么关键。
- 在动作上把关,而非在意图上。 无论推理如何抵达,都要根据策略校验最终的工具调用。转账、删除、外发请求都应通过一道独立检查,而该检查绝不把推理链当作权限依据。这正是二之规则与致命三要素框架的核心。
- 对工具实行最小权限。 将每个工具限定在最小范围,并对高影响动作要求明确的人工批准。即便推理被劫持,只要智能体在无人监督下根本无法调用危险能力,仍会撞上一堵墙。
- 将记忆视为不可信输入。 像对待外部文档一样校验、归因并分段处理检索到的记忆。为每条记忆条目保留来源信息,并积极设定过期。
- 将规划与不可信内容隔离。 不要让同时包含攻击者可控数据的上下文去驱动工具选择。dual-LLM / plan-then-execute 模式可使具特权的规划器远离原始的不可信文本。
- 监控推理轨迹,但需保持谦逊。 针对推理与工具选择的异常检测能够捕获粗糙的引导,但上下文完整性的不可能性结论提醒我们:仅靠轨迹检查无法弥合缺口。请将其作为纵深检测,而非唯一控制。
现状
| 项目 | 参考 | 日期 | 备注 |
|---|---|---|---|
| UDora(推理轨迹劫持) | arXiv:2503.01908 | 2025-02-28 → 2025-11-12(v3) | 在智能体自身推理中插入扰动;代码已公开 |
| JailAgent / Stop Fixating on Prompts | arXiv:2604.05549 | 2026-04-07 | 不改动提示词;触发提取 → 推理劫持 → 约束收紧 |
| 理论背景 | 上下文完整性、智能体综述 | 2026 | 数据/指令分离存在硬性界限 |
要点不是”又一个越狱”。它是问题位置的转移:对于使用工具的智能体而言,提示词只是众多入口之一,而推理轨迹与记忆才是你的输入过滤器从未看见的那些入口。