系统:运行中
← 返回所有攻击
AGENTS MEDIUM NEW

终止投毒:让 LLM 智能体陷入无限循环

2026 年 5 月的一篇 arXiv 论文表明,注入可以扭曲智能体对任务是否完成的判断,导致无界计算。LoopTrap 框架报告了最高 25 倍的步数放大。

2026-06-17 // 5 min affects: llm-agents, react-agents, tool-using-agents

这是什么?

2026 年 5 月 7 日,论文 LoopTrap: Termination Poisoning Attacks on LLM Agents(arXiv:2605.05846,cs.CR)提出了一类针对智能体循环中大多数防御都忽视的环节的攻击:智能体判断自己已完成的那一刻。

现代智能体在迭代循环中运行——推理、行动、观察,然后自我评估任务是否完成。论文表明,通过向智能体的上下文注入文本,攻击者可以破坏这一自我评估,使智能体认为任务尚未完成而继续工作。其结果既不是数据窃取,也不是远程代码执行,而是无界计算——浪费的 token、被抬高的账单、被占用的智能体算力。作者将其称为终止投毒(Termination Poisoning),并报告其自动化框架 LoopTrap 在 8 个主流智能体上实现了平均 3.57 倍的步数放大,峰值达 25 倍

工作原理

智能体的停止条件本身就是一次 LLM 判断:每一步之后,模型重读已有轨迹并实质上回答「目标是否已达成?」。由于该判断与工具输出、检索文档和不可信网页共用同一上下文窗口,它继承了所有提示注入的根本弱点——数据与指令之间没有边界。

终止投毒正是利用了这一点。放置在智能体会读取之处的对抗性内容——一段 API 返回、一个文件、一条网页结果——被精心设计为把「我们完成了吗?」的判断推向。论文刻画了 10 种代表性策略,并发现不同智能体具有不同的行为特征:让一个智能体陷入循环的陷阱,对另一个可能毫无作用。LoopTrap 将其转化为红队测试:先通过轻量探测沿四个脆弱性维度构建目标的行为画像,再合成针对性陷阱、对候选项打分并对失败进行精炼。

此处不复现任何 payload。机制才是重点:智能体自身的完成检查就是一个攻击面,可以像间接提示注入操纵工具选择那样被操纵。

正常循环:             被投毒的循环:
  推理                   推理
  行动                   行动
  观察                   观察  <- 注入「你还没完成」
  完成? -> 是 (停止)     完成? -> 否 (继续…再继续)

这是已知资源攻击的反向图景。工具链 token 耗尽护栏推理 DoS抬高的是单次决策的成本,而终止投毒攻击的是迭代次数——这一思路并不新鲜:Johann Rehberger 早在 2023 年就指出了 LLM 的成本/DoS 循环。

为何重要

对自主系统而言,可用性与成本是真实的安全属性。陷入被投毒循环的智能体会烧掉按用量计费的 API 支出,占用合法任务所需的处理槽位,并可能在无人察觉之前悄悄耗尽预算。在 25 倍放大下,一份精心构造的文档就把一项任务变成二十五项的算力。对于处理不可信输入的智能体集群——邮件分流、工单处理、网页调研——这是一种拒绝服务与「拒绝钱包」向量,而为窃取或命令注入而调校的传统输入过滤器并不会监测它。

它还动摇了一个常见的安全假设:让智能体一直运行,它最终会停下来。如果终止可以被外部操纵,「它会自己结束」就不是一种控制。

防御

修复是架构层面的——绝不让不可信内容来裁定智能体何时停止。

  1. 强制外部硬性上限。 在编排器中、在模型判断之外,对每个任务的迭代次数、墙钟时间、总 token 与工具调用数设置上限。这是最有效的缓解措施:循环必须由代码界定,而非由 LLM 的意见界定。
  2. 尽可能让终止判断具确定性。 对结构化任务,用明确且机器可校验的成功标准来核验完成,而不是问模型「你完成了吗?」。
  3. 按任务做预算与计量。 为每个任务设定 token/成本上限并配警报,当任务超出预期范围时安全失败——异常的步数是强烈的异常信号。
  4. 将不可信数据与控制推理分离。 把工具输出与检索文本放在清晰划定的低信任区域,避免把原始不可信内容喂入完成评估步骤。这与机器速度注入遏制中讨论的隔离逻辑一致。
  5. 监控步数分布。 在整个集群中跟踪每个任务的迭代数;某些输入上的突然放大可标记出投毒尝试以供审查。
  6. 对停止条件做红队测试。 对智能体的循环行为进行对抗性测试,而不仅是数据泄露——lethal trifecta 框架应纳入「无界消耗资源的能力」。

状态

项目参考日期备注
论文发布arXiv:2605.05846 (v1)2026-05-07定义终止投毒;10 种策略
实证范围LoopTrap 评估2026-05-078 个主流智能体,60 项任务
报告影响LoopTrap2026-05-07平均 3.57 倍放大,峰值 25 倍
先前工作(LLM 成本/DoS 循环)Embrace The Red2023-09-16关于无限循环成本滥用的早期警示

结论简单而古老:你不去界定的自主循环,就是攻击者可以替你界定的循环。 终止是一个控制决策:请把它当作控制决策来对待——在代码里强制执行,而不是在提示里。

Sources