智能体对抗智能体:面向自动提示注入红队的智能体系统 Agent Against Agent: An Agentic System for Automatic Prompt Injection Red Teaming
PIMiner 用分层记忆把攻击经验沉淀为可迁移策略库,让搜索式红队媲美 RL 方法。
前置知识
提示注入(Prompt Injection)
攻击者将恶意指令嵌入 LLM 智能体的不可信上下文中(如网页、检索文档、工具返回结果),从而操纵智能体偏离用户原始意图去执行攻击者任务。它与越狱(jailbreak)不同:越狱策略主要依赖有害目标本身,而提示注入必须同时考虑良性用户任务与被注入的恶意任务。
本文的红队目标正是自动生成有效的提示注入攻击,理解攻击面(不可信上下文)和注入语义是读懂整个方法的前提。
红队测试(Red Teaming)
系统性地生成对抗样本以评估模型或智能体的脆弱性,既用于部署前的鲁棒性评测,也用于收集高质量训练数据来微调护栏模型、改进对齐或训练更强的攻击模型。主流厂商(如 Anthropic)在发布前都会做提示注入红队。
PIMiner 的定位就是一个红队智能体系统,红队的两大用途(评测 + 数据采集)直接对应论文动机。
搜索式攻击 vs. 强化学习攻击
搜索式方法(PAIR、TAP、Strategy-based Search)针对每个样本用攻击者 LLM 迭代改写注入提示,无需训练,但每个样本都从零开始、不积累经验。RL 方法(PISmith 用 GRPO、RL-Hammer)在大批样本上训练攻击者 LLM,效果好但需要数万次目标查询、且迁移性差。
论文的核心矛盾正是这两类方法的性能鸿沟,PIMiner 的分层记忆机制专门为弥合这一鸿沟而设计。
LLM 智能体(LLM Agent)
由大模型驱动、能调用外部工具、检索信息并自主执行动作的自治系统,如 Claude Code、Codex CLI、Gemini CLI。它们天然会把不可信的工具返回结果纳入上下文,因此成为提示注入的主要攻击目标。
被攻击对象就是这类智能体,攻击样本三元组 $x_i^t=(I_i^t, C_i^t, G_i^t)$ 中的不可信上下文 $C$ 正是智能体的工具输出。
攻击成功率 ASR@N
Attack Success Rate:在最多 N 次攻击迭代内,只要有一次注入提示成功就算成功。论文默认用 ASR@10,并报告 ASR@1/5/10 三档,反映攻击在极少查询下的效率。
ASR 是贯穿全文的核心评测指标,理解 @N 后缀才能正确比较 PIMiner 与各基线。
研究动机
现有自动提示注入红队分两类,各有硬伤。RL 方法(PISmith、RL-Hammer)虽攻击力强,但训练时需要与目标智能体交互上万次查询,且学到的攻击者模型迁移性很差——PISmith 必须为每个目标 LLM 单独训练一个攻击者;GPT-Red 虽靠多样化 defender 提升泛化,却需要与微调前沿模型相当的算力。搜索式方法(TAP、PAIR)无需训练,但每个样本都从零搜索、不保留历史经验,效果明显更低:在 InjecAgent 的 GPT-5-nano 上,PAIR 仅 0.01 ASR、TAP 仅 0.08。作者指出,这一鸿沟的根源在于 RL 能在大量样本上不断积累并复用攻击知识,而搜索式方法每次都白手起家。
本文的目标是本文要构建一个能从过往经验中持续积累攻击知识的红队智能体,让搜索式方法随经验增长越来越强;同时让学到的知识可被直接迁移到训练时未见过的目标 LLM,免去昂贵的逐目标 RL 训练。具体指标上,希望对每个测试样本只需少量查询(如 $N_{\max}=10$ 次),并在前沿模型上达到与 RL 方法相当的攻击成功率,同时把训练阶段查询目标模型的额外成本压到约 20 美元量级(远低于 RL 方法的 >$100)。
与已有工作不同的是,独特切入角度是:不再把知识烘焙进模型权重(RL 的做法),也不再每次丢弃(搜索式的做法),而是把攻击经验外化为一份分层、人类可读的策略库,并配三层互补记忆(长期跨数据集库、数据集内记忆、样本内记忆),外加一个只加载 Top-K 相关策略的路由器来压低上下文与推理成本。这样知识既能像 RL 那样跨样本持续累积、又保持搜索式的低推理成本,还能跨攻击者与目标模型家族迁移、且可被人类审计。这一‘外部化分层记忆’的视角同时桥接了搜索式与 RL 两条路线,是本文与传统红队工作最本质的差异。
核心方法
直觉上,PIMiner 把攻击历史压缩成高密度的可复用知识。技术路线是对一个(数据集, 目标模型)对反复执行三段式流水线:先用路由器为每个样本从策略库选出最相关的 Top-$K=3$ 条策略;再用迭代攻击模块在三层记忆条件下、最多 $N_{\max}=10$ 步内逐轮改写注入提示;最后用经验消化器分析全部轨迹并更新策略库 $S_t \to S_{t+1}$。默认骨干为 Claude-Opus-4.7(训练用 xhigh 推理强度、测试用 low),训练序列是 8 个(数据集,模型)对,即 {AgentDojo_tr, IPIArena_tr} × {GPT-5-nano, GPT-5, Claude-Haiku-4.5, Claude-Sonnet-4.5}。
核心创新是分层记忆机制,三层互补:长期跨数据集记忆(策略库 $S_t$,Markdown 文件)、数据集内记忆 $E_i^t=\text{Curate}(\{H_{m,N_m^t}\}_{m<i})$(同数据集-模型对内先前样本的精炼经验)、样本内记忆 $H_{i,j}^t=\{(p_{i,\ell}^t,o_{i,\ell}^t,r_{i,\ell}^t,a_{i,\ell}^t)\}_{\ell<j}$(当前样本的攻击历史)。攻击生成式为 $p_{i,j}^t=\text{Attacker}(\hat{S}_i^t, E_i^t, H_{i,j}^t, x_i^t, M_t)$,其中 $\hat{S}_i^t$ 是路由器选出的候选策略集。与已有方法的本质区别:知识存在可读文件而非权重里(异于 RL)、且跨样本累积复用(异于 PAIR/TAP 每样本白手起家)。路由器只加载相关策略以压低上下文与推理成本。
方法步骤详情
第一步初始化策略库 $S_0$,仅含定义策略文件结构的 _TEMPLATE.md。第二步对样本 $x_i^t$ 与目标 $M_t$,路由器只读每条策略的路由摘要 $\psi(s)$(目标 LLM 范围 + 用户/注入任务范围 + 上下文示例),输出 $\hat{S}_i^t=\text{Router}_K(x_i^t, M_t, \{\psi(s):s\in S_t\}, s_{cold})$,$K=3$,以冷启动文件 $s_{cold}$ 兜底。第三步迭代攻击模块在三层记忆条件下生成 $p_{i,j}^t$,逐轮据失败模式调整,直到成功或耗尽 $N_{\max}=10$ 次,并用滚动并行机制并发处理多样本。第四步消化器把成功攻击归为三类(已被覆盖/匹配但范围更广/机制全新),对失败攻击做 miss-pattern 分析、下调过宽范围并补失败条件,完成 $S_t\to S_{t+1}$;即使全程无成功攻击也会精炼库。每个 LLM 智能体实现为独立 Claude Code 会话(claude -p),上下文互不共享,所有通信经 Python harness 拼装、落盘、解析。
技术新颖性
新颖性体现在五点:(1) 三层互补记忆,消融显示二者缺一不可、合用较 vanilla 迭代攻击器在 Claude-Haiku-4.5 上提升 19.8% ASR;(2) 策略以人类可读 Markdown 存储,含范围、模板、示例、失败条件,可审计且跨攻击者 LLM 迁移(把策略库接进 PAIR,Gemini-2.5-Flash 作攻击者 ASR 从 0.14 升到 0.52);(3) 用独立 Claude Code 会话实现模块化解耦,Python/Bash 编排,各组件可独立检视与扩展;(4) 训练期目标查询成本约 $20,远低于 RL 的 >$100;(5) 测试新目标无需再训练攻击者,直接套用学到的策略库。
实验结果
在前沿模型上攻击力强:IPIArena 上对 Gemini-2.5-Pro 达 76.2% ASR@10、GPT-5.1 达 61.9%、Claude-Sonnet-4.5 达 42.9%;GPT-4o-mini 最脆弱(81.0%),Claude-Opus-4.5 最鲁棒(仅 4.8%)。AgentDojo 上对 Gemini-2.5-Pro 达 86.7%、GPT-5.1 达 53.3%、Claude-Sonnet-4.5 达 40.0%。注意 Claude-Sonnet-4.5 在 IPIArena 上 ASR@1 达 28.6%,而人类红队平均仅约 1.0%。与基线比,InjecAgent(表1)三模型均 1.0 ASR,与 RL-Hammer/PISmith 持平,远超 PAIR(0.01)/TAP(0.08);AgentDojo(表2)在 GPT-5-nano 上 0.53 超过 PISmith 的 0.38,后者需逐目标训练。消融(图3)证明两种记忆互补、缺一即降;路由器在 Haiku-4.5/Sonnet-4.6 上分别压缩输入长度 43%/61% 而几乎不掉 ASR。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| InjecAgent 提示注入红队(GPT-4o-mini/4.1-nano/5-nano) | ASR@10 | 三模型均为 1.0 | PAIR 在 GPT-5-nano 为 0.01、TAP 为 0.08;RL-Hammer/PISmith 为 1.0 | 追平最强 RL 基线,并远超传统搜索式方法,闭合两类方法鸿沟 |
| AgentDojo 提示注入红队(GPT-5-nano) | ASR@10 | 0.53 | PISmith 为 0.38(需逐目标训练攻击者) | +0.15 ASR 且无需为新目标重新训练,知识直接迁移 |
| IPIArena 攻击 Claude-Sonnet-4.5 | ASR@1 | 28.6% | IPIArena 报告人类红队平均约 1.0% ASR@1 | 单次查询攻击力远超人类红队 |
| 跨攻击者 LLM 迁移(PAIR + 学到的策略库,目标 GPT-4o-mini) | ASR | Gemini-2.5-Flash 作攻击者升至 0.52 | 原始 PAIR 为 0.14 | 策略库捕获通用攻击知识,跨攻击者家族大幅提升 |
局限与改进
作者承认:为压低成本,主要用 Claude Code 系模型作骨干,骨干多样性受限;训练阶段采用灰盒假设(需构造与目标近似的模拟环境并观测中间输出),对完全封闭、隐藏工具调用的智能体未必成立;Claude-Opus-4.5 的 ASR 接近零(IPIArena 4.8%、AgentDojo 3.3%),难以区分模型真鲁棒还是评测触顶。我的补充观察:IPIArena 测试仅 21 样本,单样本约对应 5% ASR,统计噪声偏大;成本优势假设用户自带 Claude Code 订阅,换算成纯 API 计费时优势会缩水;论文未把生成的攻击真正闭环用于训练护栏模型并量化防御收益,仅停留在攻击端。
独立分析的弱点
第一,评测集偏小:IPIArena 仅 21 个测试样本,±1 样本即约 5% ASR 波动,统计显著性不足——改进方向是引入更大规模、覆盖更多 agent 设定的基准。第二,灰盒训练假设强:要求能观测目标中间轨迹,对隐藏工具调用的闭源 agent 不成立——可探索纯黑盒冷启动与渐进式探测。第三,训练骨干单一:策略库可能编码 Claude 特有的措辞偏好——建议多骨干协同训练并做去偏。第四,路由器用 LLM 文本匹配而非学习式检索:随库增长匹配成本与误检会上升——可改用嵌入检索 + 增量索引。第五,缺少与防御的闭环:未用生成攻击训练护栏并度量鲁棒性增益——这是最具实用价值的延伸。
未来方向
作者明示:支持测试时训练(TTT)范式,让测试期经验也回写长期记忆 $S$;保持对更多骨干模型的兼容(训练用强模型、测试用廉价模型)。可延伸方向:把学到的策略库直接喂给护栏/对齐训练,量化防御增益;通过分析策略库自动反推防御对策;把分层记忆机制迁移到相邻问题(越狱、对抗鲁棒性、其他 agent 安全评测);用学习式嵌入路由扩展超大策略库以缓解 LLM 文本匹配的扩展瓶颈;探索多攻击者智能体集成以提升攻击覆盖度与多样性,并将红队产出的数据闭环用于持续提升防御。
复现评估
复现性较好:作者承诺开源代码(github.com/wang-yanting/PIMiner),所用基准 IPIArena、AgentDojo、InjecAgent 均公开;训练仅 8 个(数据集,模型)对、$K=3$、$N_{\max}=10$,规模适中;编排用 Python/Bash,各 agent 为 claude -p 独立会话,模块清晰可独立检视;若用户自带 Claude Code 订阅,训练期目标查询额外成本约 $20。难点在于:依赖特定 Claude 模型版本(Opus-4.7、Haiku/Sonnet-4.5/4.6)及其推理强度设置(xhigh/low),这些模型可用性会随时间漂移;灰盒训练需自建与目标近似的模拟环境;要严格复现 ASR 数值还需锁定目标模型版本与随机种子。
论文图表