Peak + Accumulation:多轮 LLM 攻击检测的代理层评分公式
Peak + Accumulation: A Proxy-Level Scoring Formula for Multi-Turn LLM Attack Detection
peak+accumulation在10,654条对话上召回90.8%、FPR1.20%(ρ=0.45,τ=0.7)。
多轮提示注入把恶意意图分到多次请求。代理位于客户端与模型端点之间,检查messages[]后做allow/block,且不能调用LLM;它能看到完整对话历史。
- 多轮提示注入把恶意意图拆到多次请求,代理却按轮独立打分,且不能调用LLM。加权平均在各轮同分时不随轮数上升,持续攻击与单次可疑轮得分相同。
- 对用户或工具消息按正则类别加权并截断到1,再把峰值、命中轮占比乘ρ、类别多样性,以及升级与重采样加成相加。分数达到阈值τ则拦截。默认ρ=0.45、τ=0.7,不调用LLM。
- 10,654条、ρ=0.45、τ=0.7时召回90.8%、FPR1.20%。ρ从0.375到0.400,召回由77.4%到89.8%,FPR由1.11%到1.19%。两种公式在SafeMTData与hh-rlhf上召回均为0%。
- 作者称内容安全式无害措辞超出代理正则的范围,攻击的多轮结构是合成的,正则可被改写、编码或间接表述规避。主结果是规则打分,不是对某个生成模型的攻击实验;加权平均只在9条手工序列上有数字。
- 威胁模型
- 多轮提示注入把恶意意图分到多次请求。代理位于客户端与模型端点之间,检查messages[]后做allow/block,且不能调用LLM;它能看到完整对话历史。检测扫描用户或工具消息的正则与统计信号,达阈值则拦截。论文未写white-box或black-box。无注入措辞的内容安全攻击被标为范围外。
- 基准
- WildJailbreakWildChatmultiturn_attacksmultiturn_benignwildjailbreak_sparse_benignSafeMTDataAnthropic hh-rlhf
- 指标
- RecallPrecisionF1False Positive RateAccuracy
论文提出 peak + accumulation 评分公式,在代理层聚合多轮对话的逐轮模式分数,用于检测多轮提示注入攻击,无需调用 LLM。作者指出直观的加权平均存在缺陷,无论轮数多少都会收敛到单轮分数,使 20 轮持续攻击与单轮可疑得分相同。该公式结合峰值单轮风险、持续性比率和类别多样性,在 10,654 段多轮对话上评估,其中 588 个攻击来自 WildJailbreak、10,066 个良性对话来自 WildChat,取得 90.8% 召回率和 1.20% 假阳性率,F1 为 85.9%。敏感性分析显示持续性参数在 rho ~ 0.4 附近出现相变,召回率跃升 12 个百分点而假阳性率增幅可忽略。作者开源了评分算法、模式库和评估框架。
深度解读
这篇论文试图解决什么问题?
加权平均不随轮数抬高持续攻击的分数,作者提出代理可算的peak+accumulation。
多轮提示注入把恶意意图拆进多次请求,代理层没有不调用 LLM 的跨轮聚合公式。
- 场景:API 代理检查 messages[] 后做 allow/block,且不能调用 LLM。作者称分类 LLM 会带来每请求 100–500ms 延迟、按 token 计费,且自身可被提示注入。
- 现有不足:作者称单轮代理检测已有研究,多轮工作则要 LLM 分类。作者称据其所知,没有只用代理可算运算、把逐轮模式分数收成对话级风险分的完整公式。
- 核心观察:定理 1:各轮分数同为 s 时,加权平均等于 s,与轮数无关;作者称这对任何加权平均都成立。单轮分低于阈值时,持续攻击无法越过该阈值。作者举例:阈值 0.7 下,四轮均为 role_confusion(权重 0.5)仍得 0.5。
- 提出的公式:提出 peak + accumulation,叠加峰值、持续比例、类别多样性,以及升级与重采样加成。作者在 10,654 条多轮对话上评测,并称已发布算法、正则库和评测工具。
- 威胁模型:
- 目标:请求到达模型前,拦截跨轮分发的提示注入。
- 位置:受害侧是检查 messages[] 的代理及其后的模型端点;决策不能调用 LLM。
- 可见信息:代理有完整对话历史,公式扫描用户或工具消息。论文未写攻击者是否知道正则,也未用 white-box 或 black-box。
- 形态:意图分布在多轮。作者引述单轮加固模型上多轮越狱 ASR >70%,Crescendo 不到 5 轮越狱大多数模型,越狱状态会延续。无注入套话的内容安全攻击被标为范围外。
有哪些相关研究?
单轮代理检测与多轮LLM分类都未给出可在代理上计算的跨轮聚合公式。
相关工作分成单轮代理检测、需要 LLM 的多轮分类、多轮攻击刻画,以及相邻领域的累积打分。作者称这些都没有给出只用代理可算运算的跨轮聚合公式。
单轮代理检测
- DMPI-PMHFE(Shen 等):DeBERTa-v3-base 嵌入加启发式通道,含 8 个攻击模式的 WordNet 同义词标记、超过 3 组问答的 many-shot,以及超过 3 次的重复 token。作者引述其在 safeguard-v2 上准确率 97.94%。
- PromptScreen、NeMo Guardrails、Rebuff:分别为 TF-IDF 加线性 SVM;长度/困惑度比与前缀、后缀困惑度阈值,针对 GCG 式后缀;含关键词排列匹配的四层防御。论文称这些都只处理单轮。
需要 LLM 的多轮检测
- Defensive M2S(Kim 等):用连字符把多轮压成单轮,再由 Qwen3Guard 分类。作者引述召回 93.8%,推理 token 减少 94.6%。
- MindGuard 与 AprielGuard:前者用临床风险分类、轮级标注和 4B–8B 分类器;后者训练 8B 护栏模型,并带结构化推理轨迹。
- LessWrong 提案:作者称其架构最接近代理层打分,形式为 P(jailbreak)=fE(response) 加双阈值,但 fE 用 LLM 评估器。论文称上述方法都不可在代理上计算。
多轮攻击刻画
- Yang 等:多轮越狱近似重采样单轮攻击,成功沿 S(k)=A−B·e−ck 随尝试次数上升。作者据此认为主信号是持续,而不是模式升级。
- Crescendo 与 MTJ-Bench:论文称前者逐步升级,且每条用户提示故意无害,模式匹配检测不到;后者区分后续追问与跨话题延续。
- Ren 等:给出七个面向机制的越狱族,其中包括升级和持续。
相邻领域的累积
CUSUM、贝叶斯信念更新、Splunk RBA:累积偏离并在超阈值时告警、用证据单调更新后验、把异常相加而不是平均。作者称共同点是证据越多分数越高。
基线与语料:对照是 §3 的加权平均,近因权重从 1.0 线性到 2.0。该对照的分数只在 9 条手工多轮攻击上报告,未在 WildJailbreak 与 WildChat 全量上给出。评测语料为手工序列、由 WildJailbreak 对抗提示拼成的对话,以及 WildChat 良性对话。
作者称据其所知,此前没有代理层公式处理这一聚合;多轮检测已有,但要调用 LLM。作者把平均改成累积,并且只做代理可算的运算。
论文如何解决这个问题?
分数由峰值、匹配比例乘ρ、类别多样性及升级与重采样加成相加,默认阈值0.7。
在不调用 LLM 的前提下,对用户或工具消息做类别打分,再用 peak + accumulation 把峰值、持续和多样性加成;分数达到 τ 则拦截。
逐轮打分
- 每条用户或工具消息对照一组正则类别。类别 c 的权重 wc 在 [0, 1]。
- 默认五类(Table 2):instruction_seeding 0.4,role_confusion 0.5,deferred_authority 0.3,escalation_probing 0.3,repetition_resampling 0.2。最后一类由算法检测,表中不给正则示例。
- 一轮分数是命中权重之和,截断到 [0, 1]:si=min(1,∑c∈ matched(i) wc)。
对话级分数
- peak 为各轮最高分;match_ratio 为 si>0 的轮数除以 n;diversity 为 max(0, 不同类别数−1) 乘 δ。
- 总分截断到 [0, 1]:score=clamp(peak+match_ratio·ρ+diversity+βe+βr,0,1)。score≥τ 则 block。
- 默认 ρ=0.45,δ=0.15,βe=0.2,βr=0.7,τ=0.7。这些超参数在 validation split 上调节。
- βe:至少 3 个连续轮次分数严格递增时加入;§4.4 写成最后至少 3 轮。βr:连续至少 3 对用户消息的词级 trigram Jaccard 相似度 >0.5 时加入;先小写并去掉标点,短于 20 token 的消息不参与。repetition_resampling 是逐轮类别权重,βr 是对话级加成;论文未写二者是否会在同一次重采样上叠加。
设计原则与算例
原则来自 §2.4,论文未另做推导:单轮高分应完整进入对话分;命中轮越多分越高;跨多个类别比单类重复更可疑;升级梯度与重采样应相加,避免被平均掉。
§4.6 的算例均未加升级或重采样加成:
- 分数 [0, 0, 0, 0.3]:得分 0.4125,Allow。
- [0, 0.3, 0, 0.5] 且两类:得分 0.875,Block。
- 四轮均为 0.5:得分 0.95,Block。同一序列的加权平均为 0.5,低于 0.7。
在代理中的位置
评测实现在 Parapet 中,并关闭 L3 单轮匹配,只留 L4,以免 L3 对良性对话的误报被算到 L4。L4 在用户消息数达到 min_user_turns(默认 2)时启用。作者还把 L0 规范化放在 L4 之前,并列出 L3 与 L5a 输出扫描;这些层不是本文实验的对照。
论文做了哪些实验?
10,654条对话、ρ=0.45、τ=0.7时召回90.8%,FPR 1.20%,F1 85.9%。
实验设置
- 实现:公式写在 Parapet 中。评测为 L4-only,关闭 L3。拦截条件为 score≥0.7。没有 LLM 评审。论文未报告重复次数。手工序列含助手回复;公式扫描的是用户或工具消息。
- 攻击:手工 9 条,每条 3–4 个用户轮,覆盖 instruction seeding、role confusion、deferred authority、escalation probing、resampling。另有由 WildJailbreak 对抗提示拼成的 579 条:作者称该数据集有 262K 对抗/良性提示对;从 82K 对抗提示抽出 5,529 条注入句,分属四个 L4 类别,再按单类持续 179、多类组合 300、带良性开头的升级梯度 100 组成对话。正文写四种策略,只给出这三组条数。攻击合计 588。摘要把 588 条都写成源自 WildJailbreak;Table 4 分为手工 9 与 579。
- 良性:手工 6 条;sparse-benign 60 条,3–4 轮里只有 1 轮是注入,标签为良性;WildChat 10,000 条,从 838K ChatGPT 对话抽样,保留至少 3 个用户轮且各轮标为 non-toxic。良性合计 10,066,总计 10,654。摘要把 10,066 条良性都写成来自 WildChat;Table 4 把 WildChat 记为 10,000。
- 划分:ρ、δ、βe、βr、τ 在 validation split 上调节。作者称最终指标在固定且不相交的 20% holdout 上只报告一次。Table 3 的规模是全部 10,654 条。作者称因再分发许可不一,发布的是构造与评测脚本。
- 对照与排除:加权平均只在 9 条手工攻击上有分数。SafeMTData 与 Anthropic hh-rlhf 上两种公式召回都是 0%,作者排除出主结果。
主结果
Table 4 为分数据集准确率(peak + accumulation)。汇总指标在表后,条件为 Table 3 的 ρ=0.45、τ=0.7。
| 数据集 | 标签 | 总数 | 判对 | 准确率 | | multiturn_attacks | malicious | 9 | 9 | 100.0% | | wildjailbreak_attacks | malicious | 579 | 525 | 90.7% | | multiturn_benign | benign | 6 | 6 | 100.0% | | wildjailbreak_sparse_benign | benign | 60 | 60 | 100.0% | | wildchat_benign | benign | 10,000 | 9,879 | 98.8% |
- Table 3:TP 534/588,FN 54/588,FP 121/10,066,TN 9,945/10,066;召回 90.8%,精确率 81.5%,F1 85.9%,FPR 1.20%,准确率 98.4%(与 Table 4 合计 10,479/10,654 一致)。
- 54 条漏报中,39 条只用权重 0.3 的 escalation_probing 或 deferred_authority,且并非全轮命中,作者写 0.3+match_ratio×0.45 仍低于 0.7。其余 15 条是升级梯度对话,良性开头降低了 match_ratio。
- 121 条误报都在 WildChat。作者称来自角色扮演、讨论 AI 能力的说法,以及带权威人物的创作,属于正则特异性而不是打分公式。sparse-benign 没有误报。作者称 81.5% 的精确率说明在 1.20% FPR 下模式库可用于生产。
持久性参数扫描
- §6.2 在 validation split 上将 ρ 从 0.15 扫到 0.65,步长 0.025,然后固定 ρ。Figure 1 标题写 n=588 条攻击、10,066 条良性、阈值 0.7,并标注 ρ=0.45 时召回 90.8%、FPR 1.20%、F1 85.9%,与 Table 3 相同。论文未分开给出两套划分的样本量。
- 作者称 ρ=0.375 与 0.400 之间出现相变:召回从 77.4% 到 89.8%。正文写增加 12.4 个百分点;摘要写 12 个百分点,图中标注 +12pp。FPR 从 1.11% 到 1.19%,增加 0.08 个百分点。解释是权重 0.3 且 match_ratio=1.0 时分数为 0.3+ρ:0.375 对应 0.675,0.400 对应 0.700。
- 作者把默认选在 ρ=0.45,并称 F1 在此最大,为 85.9%。ρ=0.5 时召回 91.8%、FPR 1.28%;ρ=0.6 时图中标注召回 95.9%、FPR 1.51%。作者称从 0.375 到 0.45,每 0.01 个百分点 FPR 换 1.5 个百分点召回;从 0.5 到 0.6,每 0.01 个百分点只换 0.18 个百分点。match_ratio=0.75 时 0.3+0.75×0.45=0.6375,仍低于阈值。
加权平均对照
- §3.3 用 9 条手工序列、五类攻击。其中 5 条每轮都命中,分数在 0.3 到 0.5,判定 Allow。
- Table 1 三例:mt-atk-003,角色混淆,4 轮,0.50,Allow;mt-atk-004,角色混淆加 persona,3 轮,0.50,Allow;mt-atk-006,升级探测,4 轮,0.30,Allow。
- 论文未报告加权平均在 10,654 条上的召回或 FPR。
范围外数据集
- SafeMTData(crescendo 式内容安全)和 Anthropic hh-rlhf(社会工程)上,两种公式召回均为 0%。
- 作者称这符合预期:措辞故意无害,没有注入套话;代理正则不能检测话题轨迹升级,该能力需要 LLM 语义分类。因此不计入 Table 3。
其他消融与分析
- δ=0.15:作者称多 1 个类别加 0.15,多 2 个加 0.30;无扫描表。
- βe=0.2:作者称单独不足以在 τ=0.7 触发拦截。
- βr=0.7:作者称单独即接近阈值。
- 论文未报告 δ、βe、βr、τ 的数值扫描。
有什么可以进一步探索的点?
作者指出内容安全攻击不在范围内,多轮结构为合成,正则可被改写规避。
作者指出的局限与后续方向
- 内容安全:Crescendo 式攻击使用故意无害的语言。作者称代理层正则不能检测话题轨迹升级,这是代理层做法的根本限制,不是该公式的问题(§5.4)。
- 合成结构:攻击从 9 条手工扩到 588 条,多轮结构是合成拼接的。作者称没有公开的多轮提示注入数据集;现有多轮集针对内容安全,注入集则是单轮。评测接受 YAML,作者鼓励贡献真实多轮注入轨迹(§5.4)。
- 正则可规避:作者称改写、编码技巧或间接表述可以绕过正则,这是模式方法的已知限制。打分与模式质量正交,提升模式稳健性被写成互补的后续工作(§5.4)。
实验覆盖范围
- 主表覆盖 588 条攻击和 10,066 条良性,由分数与 τ=0.7 比较判定,实验未跑生成模型或 LLM 评审(Table 3、§5.1)。相关工作里 Defensive M2S、MindGuard、AprielGuard 的数字是作者引述,不是在这批对话上复现的结果。
- 加权平均只在 9 条手工序列上有分数(Table 1);论文未报告它在 10,654 条上的指标。
- SafeMTData 与 Anthropic hh-rlhf 上两种公式召回均为 0%,并被排除出主结果(§5.1)。
- ρ 在 validation split 上从 0.15 到 0.65、步长 0.025 扫描(§6.2)。作者写最终数字来自不相交的 20% holdout,但 Table 3 与 Figure 1 写明的 n 是 588 与 10,066;论文未分开报告两个划分的指标。
- 论文未报告重复次数,也未报告 §5.4 所写改写、编码或间接表述下的检测数字。作者称因许可不一,发布构造与评测脚本,而不是可再分发的完整对话(§5.1)。
总结一下论文的主要内容
代理不调用LLM,用峰值加持续与多样性打分,所述语料召回90.8%、FPR 1.20%。
peak + accumulation 给 API 代理做多轮打分:不调用模型,把逐轮正则信号收成一个对话分数,达到阈值就拦截。
要处理的情况是恶意意图被拆到多轮。加权平均在各轮同分时等于单轮分,所以低于阈值的持续命中过不了线。
实现上,一轮分数是命中类别权重之和并截到 1。对话分取峰值,加上命中轮占比乘 ρ、多出的类别数乘 δ,以及严格递增时的 βe 和 trigram 重采样时的 βr。默认 ρ=0.45、τ=0.7。
Table 3 在 10,654 条、ρ=0.45、τ=0.7 下给出召回 90.8%(534/588)、精确率 81.5%、F1 85.9%、FPR 1.20%(121/10,066)。Table 4 中,WildJailbreak 拼成的 579 条判对 525。9 条手工序列里,加权平均有 5 条落在 0.3–0.5 并 Allow。ρ 从 0.375 到 0.400,召回从 77.4% 到 89.8%,FPR 从 1.11% 到 1.19%。SafeMTData 与 hh-rlhf 上召回为 0%,未计入主表。
作者的结论是:加权平均不适合做持续检测;峰值、持续比例和类别多样性可以相加补上。§5.4 把无害措辞的内容安全攻击、合成的多轮结构,以及正则可被改写,分别标成范围或后续工作。作者称公式确定、可审计,不需要推理、训练数据或 GPU,且每次请求为微秒级;论文未给出计时表。