论文链接:Groundhog Bit-Flip Attack: Seeding Infinite Generation Loops in Mixture-of-Experts LLMs through Bit Flips 发表时间:2026年8月 机构:Louisiana State University(路易斯安那州立大学)+ UCLA + Southeast University(东南大学)+ Northeastern University(东北大学)+ Zhejiang University(浙江大学)——中美五校纯学术合作(前三作者等贡献;LSU 提供高性能计算资源) 领域标签:cs.CL / AI 安全 / 硬件安全 / MoE 架构

一、论文背景

MoE(Mixture-of-Experts,混合专家) 是当前大模型扩展的主流架构:把 Transformer 的前馈层替换为一组「专家网络」+ 一个「路由器」——每个 token 只激活其中的 top-k 个专家。这样模型可以做到总参数万亿级、但每个 token 的实际计算量只有小模型水平。Mixtral、DeepSeek、Qwen3-MoE、GPT-OSS 都采用这一设计。代价是引入了新攻击面:专家对特定 token 产生特化,行为可以被轻量扰动操纵。

Bit-Flip Attack(BFA,位翻转攻击) 是硬件安全领域的经典攻击:利用 IEEE 754 浮点数的位结构(1 符号位+8 指数位+23 尾数位),翻转不同位置的 bit 产生量级完全不同的扰动——翻转 1.5 的符号位得 −1.5,翻最高指数位得约 3.1×10³⁸,翻最低尾数位只变化约 10⁻⁷。实现载体是 Rowhammer:反复访问选定 DRAM 行,诱发相邻行的 bit 翻转,无需物理接触受害机器——在 CPU 与 GPU 上都有端到端利用先例,也已被用于神经网络的精度降级、定向误分类、后门植入与模型窃取。

此前 BFA 研究盯的都是完整性攻击(让模型算错、输出被污染)。这篇论文问了一个新问题:既然 MoE 的终止行为集中在少数专家,能不能用极少的 bit 翻转让模型停不下来——输出无限膨胀、按 token 计费的用户钱包被抽干?这就是 Denial-of-Wallet(DoW,钱包拒绝服务):一种可用性攻击。攻击以电影《土拨鼠之日》命名——模型像被困在时间循环里,重复生成语法正确但永不终止的文本。

威胁模型非常现实:公有 MLaaS 环境中,攻击者是与受害 LLM 共置在同一物理服务器上的无特权租户(多租户分时共享 GPU),通过 Rowhammer 或电压毛刺注入 bit 翻转;由于多数 MoE 模型开放权重,攻击者可白盒获得路由器参数;攻击目标是按 token 计费的推理服务——输出膨胀直接变成用户账单膨胀。隐蔽性约束:攻击需保持任务性能与困惑度基本无损,避免被检测。

二、论文定位和关联工作

论文位于三条研究线的交叉点:

MoE 专属安全研究。MoEcho 利用专家执行的时间/空间侧信道推断用户输入输出(隐私攻击);SAFEx 发现 MoE 模型的安全对齐行为强依赖于特定位置专家(安全攻击)。本文补上第三类:可用性攻击——且首次发现「终止 token 由专属专家子集主导」这一现象。三篇合起来看,MoE 的路由机制同时是隐私面、安全面、可用性面。

BFA 攻击谱系。经典 BFA(Rakin et al.)做精度降级与定向误分类,其后有后门植入、模型提取等变体;全部是完整性攻击(模型输出「错」)。GBFA 把 BFA 重定向为可用性攻击(模型输出「多」而看起来仍「对」)——攻击目标从「破坏正确性」变为「保持正确性的同时最大化成本」,检测难度根本不同。

输出膨胀/循环相关研究。Breaking the Loop 等实时打断循环行为的检测器与本文正交——但论文指出合法的重复输出会触发同样信号,可靠性受限。

维度经典 BFAMoEcho(侧信道)SAFEx(安全)GBFA(本文)
攻击类别完整性隐私安全对齐可用性(DoW)
攻击面权重任意位专家执行痕迹位置专家路由层的终止专家
表现精度降级/误分类窃取输入输出越过安全约束输出无限膨胀、语义保持
检测难度PPL/基准可见侧信道防护安全测试PPL/基准几乎不可见

定位结论:论文是首个 MoE bit-flip DoW 攻击,其真正的概念贡献是把「专家-token 特化」从一种优化现象重新表述为结构性漏洞——路由为了效率把功能局部化,局部化恰是攻击者要的。

三、问题定义

具体问题:在云端按 token 计费的 MoE 推理服务上,共置攻击者能否用极少的 bit 翻转,让受害模型输出大幅膨胀而语义不变?

核心洞察:MoE 的稀疏路由为了效率把「何时停止」这个关键功能压缩进了少数专家——效率优化的局部性 = 攻击者梦寐以求的靶点集中度。如果 EOS/EOT 的生成由小集合专家主导,那么压制这几个专家(把它们挤出路由 top-k),终止 token 就永远生不出来,模型陷入循环。

形式化:MoE 路由器计算 s = hᵀW + b,经 Softmax(TopK) 选出 k 个专家。攻击的三步抽象:(1) 用统计量识别终止相关专家——对路由专家定义 Target Activation Shift τ_{l,i} = 目标 token 位置的专家激活频率(EAF) − 非目标位置的 EAF;对每 token 必激活的共享专家(DeepSeek/Qwen3 的设计)改用 Target Gate Shift Δg_{l,i}(门控值之差)。τ 或 Δg 高的专家即「平时不点火、专在终止时点火」的专家。(2) 在路由器权重 W 的专家列向量 v_i(或偏置 b)中搜索脆弱 bit——用 BF-eff(b) = (EAF_orig − EAF(b))/EAF_orig 度量翻转某 bit 对专家激活的压制效果。(3) 翻转这些 bit 使目标专家掉出 top-k。

类比:这就像一栋大楼把「紧急停止按钮」集中装在一个配电箱里——平时高效省事,但小偷只要锁死这一个箱子,全楼的电梯就永远停不下来。攻击的本质是把功能局部化逆转为攻击局部化。

问题的精妙之处在于约束的非对称:攻击不需要破坏模型(那会被发现),只需要破坏「停止」这一个行为——而停止行为恰好是最局部化的功能。

四、问题解法

GBFA 是一条三步流水线(对应论文图 2):

4.1 第一步:识别终止相关专家

在 1,000 个样本(Stanford Alpaca)上计算每层的 τ_{l,i} 与 Δg_{l,i}。两种检测策略:

  • GLOBAL(全局检测):跨所有层按 τ/Δg 排序,超过阈值者标记为终止相关专家——适合终止行为跨层分布的模型(如 GPT-OSS)。计算开销最小,但可能要改更多专家。
  • LOCAL(局部检测):逐层独立评估——每层取 top-k(等于模型原生路由 top-k)专家、只停用该层这些专家、测输出长度变化,输出膨胀最大的层 l* 即目标层。更精准、改动专家更少、效用保持更好,但需 O(L) 次评估;对 EOS 行为跨多层分布的模型(GPT-OSS)效果差。

两种方法在极小样本(N=10)下依然稳定识别——检测成本极低。

4.2 第二步:免推理的脆弱 bit 搜索

全模型 BFA 在十亿参数规模不可行(每个候选 bit 都要完整前向)。GBFA 的方案:只跑一次模型,把目标层的隐藏态缓存为 [M, D] 张量;此后对每个终止相关专家的路由向量 v_i,逐位翻转、用缓存隐藏态直接重算路由 logits 与 EAF——无需任何推理。每个专家平均只需 16.4 秒、3 个关键权重、每个权重 1 个 bit(即每专家 3 个 bit)。无偏置路由器的模型(Mixtral/Phi-3.5/DeepSeek/Qwen3)翻权重列,有偏置的(GPT-OSS)优先翻偏置——偏置对所有路由决策做线性偏移、无参数间干扰,攻击效率最高,效果逼近手工停用。

4.3 第三步:在线执行

用 Rowhammer 在受害模型 DRAM 中翻转目标 bit。由于修改的是持久化路由权重,一次成功攻击压制所有后续查询,无需进一步交互。分布式推理也不构成障碍:流水线并行下路由不切分、翻转数不变;张量并行下路由权重复制多份,但可污染共享页缓存让毒副本到达所有设备。

三种攻击模式:(1) 对话/生成任务压制 EOS;(2) 推理模型(GPT-OSS/Qwen3)压制 EOT(思考结束)token——模型一直「想」到 token 预算耗尽也出不来答案;(3) Agent 编码(Qwen3-Coder + smolagents CodeAgent 框架,规划/行动交替)压制聊天模板的轮次结束 token <|im_end|>——规划阶段 token 爆炸。

步骤输入输出关键设计
1. 专家识别1,000 样本 EAF/门控统计终止相关专家集GLOBAL/LOCAL 双策略,N=10 亦稳定
2. bit 搜索缓存隐藏态+路由权重每专家 3 个脆弱 bit免推理,16.4s/专家
3. 在线翻转Rowhammer持久化路由损坏一次攻击、全查询生效

五、评估指标与实验证据

指标:(1) 攻击效果——Token 生成变化百分比 P = (T_deact − T_base)/T_base × 100%;(2) 模型效用——分类用 Clean Accuracy、摘要用 ROUGE-1、问答用 F1、Agent 用规划步数/规划 token;(3) 语义质量——困惑度 PPL。配置:贪心解码、max tokens 1024(附录证明温度/核采样/重复惩罚下膨胀依旧);3×A100 80GB。

实验一:手工停用验证机制(把识别出的专家 logits 设 −inf,建立攻击效果上界)。6 个模型:Mixtral-8x7B(8 专家选 2)、Phi-3.5-MoE(16 选 2)、DeepSeek-V2-Lite(64 选 6)、Qwen3-30B(128 选 8)、Qwen3-Coder-Next(512 选 10)、GPT-OSS-20B(32 选 4)。平均停用不到 4 个专家即致平均输出膨胀 5912%,多数样本达 max tokens。与 Random(停 50 个随机专家)对比拉开数量级:GPT-OSS AGNews 上 Random 是 −3.43%(随机停用几乎无效),GLOBAL 达 556%;DeepSeek 上 Random 67.9% vs LOCAL 3.81×10⁴%。LOCAL 与 GLOBAL 的强弱分布揭示了各模型终止机制的实现差异:DeepSeek 的 EOS 集中在单层少数专家(LOCAL 碾压 GLOBAL),GPT-OSS 分布跨层(必须 GLOBAL)。被攻击的模型生成「重复但连贯」的循环文本——语言质量保持、只失去终止控制。

实验二:GBFA 实测(真翻 bit)。四个可执行模型上的结果:DeepSeek GLOBAL 在 AGNews/SST-2 达 +4.64×10⁴%/+4.44×10⁴%,Mixtral GLOBAL +2.51×10³%(SST-2 4.99×10³%),GPT-OSS GLOBAL 556%(与手工停用完全持平——攻击偏置的效果上限)。Qwen3-Coder Agent 模式:10 个自包含 Python 沙盒(计算器重构、bug 修复、功能新增、测试覆盖等),GLOBAL 手工停用使全部 10 个沙盒顶满 25 步上限,规划 token 平均 +576.2%(最高 bug_fix +891.0%),规划输出退化为语法合法的字符循环;LOCAL 平均仅 +8.6% 且不稳定。EOT 攻击:GPT-OSS GLOBAL 思考长度 +365%~+1.27×10³%。

实验三:隐蔽性(1,000 样本/数据集)。关键数字:Mixtral GBFA 后 AGNews CA 0.840/0.800 vs 基线 0.838——攻击后分类准确率不降反稳,PPL 从 1.40 只到 1.89(<10,语言连贯);Phi-3.5 部分 ROUGE-1 甚至上升(0.362→0.382,与「专家操纵可提升任务表现」的近期发现一致)。诚实的失败案例:DeepSeek GLOBAL GBFA 的 PPL 爆炸至 5.3×10⁶——翻转的 bit 波及了 DeepSeek 依赖的连贯生成路由权重,前几个 token 就崩坏并自传播。论文如实报告并给出修复方向(bit 搜索加入首 token PPL 准则)。

为什么实验设计能证明论点:三个研究问题层层递进:RQ1(专家特化存在吗)由 τ/Δg 统计与手工停用的数量级效应证实;RQ2(能否高效识别)由 GLOBAL/LOCAL 双策略 + Random 基线对比证实——Random 停 50 个都不如精准停 4 个,证明是「识别」在起作用而非停用本身;RQ3(bit 级能否实现)由 GBFA 与手工停用的效果对比证实。三模式(对话/推理/Agent)跨 6 模型的一致性排除了单模型巧合。

六、效果优势的根源解释

机制因果链:(1) MoE 训练的天然结果是专家功能特化——路由器学会把「终止 token」这类高频且行为统一的 token 交给固定的小专家集合处理(论文的核心经验发现:τ_{l,i} 分布高度长尾)→ (2) 终止能力被局部化在 KB 级的路由参数里 → (3) 路由 logits 对这些专家列向量的 bit 扰动高度敏感——每个专家只需 3 个 bit 即可近似停用(指数位翻转使权重跳变数个数量级,该专家在所有 token 上的得分被系统性压低)→ (4) top-k 选择是硬阈值:得分被压低的专家永远进不了 top-k → 终止 token 的生成概率被系统性截断 → (5) 模型继续生成语法连贯的内容(其他专家完好)但失去「停止」这一行为 → 输出膨胀至 token 上限。

为什么语义保持:这是可用性攻击区别于完整性攻击的根源。终止专家是功能专属的——平时几乎不激活(τ 的定义本身就保证了这一点:目标 EAF 高、非目标 EAF 低)。压制它们对普通 token 的处理几乎零影响:Mixtral 的 CA 保持 0.840、PPL < 2。攻击精确地只切断了「停止信号通路」,就像剪断红绿灯的电源而不碰任何一辆车——车流照常,只是永远不结束。

为什么 GPT-OSS 攻偏置效果逼近手工:偏置 b 对该专家的路由得分是常数线性偏移——翻一个指数位,该专家在所有输入上的得分统一暴跌,等效于手工设 −inf;而权重列向量 v_i 与隐藏态点积,翻转效果随输入分布波动,只能「近似」压制。这解释了 GBFA 在 GPT-OSS 上 556% 与手工 556% 完全持平的现象。

为什么 DeepSeek 是最惨的受害者(又是失败案例):DeepSeek 的终止专家集中度高(LOCAL 手工停用 3.81×10⁴% 全场最高),bit 攻击同样最猛(4.64×10⁴%);但它的连贯生成也强依赖路由器权重——同一批被翻的 bit 波及正常路由,PPL 爆炸。攻击效果与隐蔽性在 DeepSeek GLOBAL 上不可兼得,暴露了当前 bit 搜索未加语义约束的缺陷。

反事实推理:若终止行为均匀分布在所有专家(无特化),则压制终止需要翻转海量 bit、超出 Rowhammer 实际能力——攻击不可行;若随机停用 50 个专家有效,则无需白盒知识与统计识别——实测 Random 在 GPT-OSS 上是 −3.43%,证明特化与识别缺一不可。防御侧的反事实:输出长度上限只封顶单请求损失、循环检测会被合法重复输出触发、ECC/TEE 检测偶然故障但难敌定向翻转且有开销——没有一类现有防御根治「路由敏感性」这个病根。

七、必要知识反推

领域知识层:(1) MoE 架构细节——路由器数学(TopK+Softmax)、共享专家 vs 路由专家的区别(二者的「激活」定义不同,决定了 τ 与 Δg 两套统计量)、六大模型各自的路由设计差异;(2) 终止机制——EOS/EOT/聊天模板结束 token 在不同模型中的角色(对话终止、思考终止、Agent 轮次终止);(3) LLM 计费模式——按 token 计费使「输出长度」直接等于「金钱损失」,这是 DoW 攻击的价值前提。

方法论知识层:(1) BFA 与 IEEE 754 位结构——符号/指数/尾数翻转的不同扰动量级,是脆弱 bit 搜索的理论基础;(2) Rowhammer 与 GPU 故障注入文献——攻击的现实载体与共置威胁模型;(3) 统计对比设计——target vs non-target 位置的激活频率差分思想(类 Differential Testing);(4) 消融设计——手工停用(上界)/bit 攻击(实际)/Random(基线)三层对照。

工程知识层:(1) 免推理 bit 搜索的缓存技巧——一次前向缓存隐藏态、离线重算路由 logits,把 O(参数×前向) 降到 O(缓存×位);(2) 模型服务栈知识——分布式推理(TP/PP)下参数的分布方式与页缓存污染;(3) Agent 框架(smolagents CodeAgent)的规划-行动循环与沙盒测试床搭建。

知识融合的关键节点:最大的化学反应在「体系结构安全 × 模型行为分析」的交汇处——硬件安全研究者看 bit,NLP 研究者看 token,本文的洞察是让两者对接:先用 NLP 式的激活统计(EAF 差分)找到「哪个功能在哪」,再用硬件式的位级操作(指数位翻转)精确切除它。第二个节点是威胁模型的经济学转向:从「让模型错」(完整性)到「让模型贵」(可用性)——这一转向自动继承了对准确性检测的免疫性,因为 PPL 与基准分数在攻击前后几乎不变。

八、论文中可以提取的通用性灵感

1. 效率优化的局部性是潜在攻击面。核心思想:任何为了效率把关键功能压缩到小区域的设计(稀疏路由、缓存、专用模块),都等价于给攻击者提供了高杠杆靶点——优化越激进,单点故障的杠杆越大。论文证据:终止行为集中在 <4 个专家、每专家 3 个 bit 即可瘫痪;Random 停 50 个专家反而无效。推广场景:微服务架构的关键路径单点审计、CDN 缓存的集中失效风险、芯片专用加速器的安全评估、模型压缩/剪枝后的鲁棒性复检。

2. 可用性攻击可以藏在「正确性」背后。核心思想:不破坏输出质量的攻击(只改变成本/时长/频率)能天然躲过以正确性为核心的质检体系。论文证据:GBFA 后 Mixtral CA 0.840 vs 基线 0.838、PPL<2,但输出膨胀 5912%。推广场景:API 服务的资源耗尽型滥用检测(响应仍正确但变慢/变贵)、机器人任务的时长异常审计、广告/推荐的展示频率操纵、云函数的计费异常监控。

3. 用「条件激活差分」定位功能承载单元。核心思想:要找到「哪个组件负责哪个行为」,比较该行为发生与不发生时各组件的激活差分即可——差分大者即承载者。论文证据:τ = 目标位置 EAF − 非目标 EAF 精准锁定终止专家,N=10 样本即稳定。推广场景:模型可解释性中的因果归因(哪些神经元/注意力头负责某能力)、电路定位、流水线瓶颈定位(对比忙/闲组件)、组织流程中的责任环节定位。

4. 昂贵评估可以用「一次采样+缓存重放」摊销。核心思想:当评估对象只是「输入到少量中间量的映射」时,缓存中间量、离线重算映射,可把看似不可行的搜索变成秒级。论文证据:全模型 BFA 不可行 → 缓存隐藏态后每专家 bit 搜索仅 16.4 秒。推广场景:超参搜索中的特征缓存、A/B 测试的流量重放、编译器 pass 的增量编译、数据库计划的参数化重优化。

5. 「停止」是被低估的关键能力,值得单独设防。核心思想:系统的终止条件(何时结束生成/任务/循环)常被视为默认行为而非能力,其失效模式(停不下来)既隐蔽又昂贵。论文证据:压制 EOS/EOT/轮次结束三种「停止」分别导致生成爆炸、思考永续、Agent 步数顶满。推广场景:Agent 系统的预算熔断器设计(独立于模型的硬终止)、流式服务的 watchdog、自动化交易的止损独立性、长任务的强制检查点机制。

6. 分布式部署不会自动稀释定向攻击。核心思想:参数复制/切分看似分散风险,但共享来源(页缓存、模型仓库、检查点存储)会让单点污染扩散到所有副本。论文证据:TP 下路由权重多副本,但污染共享页缓存即可一次毒化全部设备。推广场景:容器镜像供应链的单一来源风险、多区域配置同步的「毒配置」传播、边缘设备 OTA 更新的批次污染、CDN 源站的缓存投毒。


一句话总结:这篇论文揭示了 MoE 架构的一个结构性讽刺——稀疏路由为了省钱把「停止」的权力交给了极少数专家,而攻击者只需翻几个 bit 就能让这个省钱设计变成烧钱机器;当输出依然流畅、分数依然正常时,唯一在流血的是用户的钱包。