20 7 月, 2025

英伟达 GPU 漏洞曝光:GPUHammer 攻击引发模型准确率暴跌

gpu-gpuhammer-

英伟达的图形处理单元(GPU)近日被曝存在严重漏洞,白帽黑客通过一种名为 GPUHammer 的攻击方式,能够将运行在 GPU 上的大模型准确率从 80% 直接降至 0.02%。多伦多大学的研究人员将这种攻击比喻为在模型中引发“灾难性的脑损伤”。目前,这种攻击已经在英伟达 RTX A6000 上成功测试,但其他型号是否也会受到影响仍未可知。

英伟达建议用户采取一项防御措施以应对这一漏洞,但这种措施会导致模型性能下降 10%。那么,这个漏洞究竟是怎么回事呢?

GPUHammer:首个成功攻击 GPU 显存的 Rowhammer 攻击

GPUHammer 并非传统意义上的软件漏洞,而是一种“物理攻击”。它属于 Rowhammer 攻击的一类:攻击者通过反复“敲击”内存某一行,引发相邻行中的比特翻转(从 0 变成 1,或从 1 变成 0),从而悄然篡改数据。此前,Rowhammer 攻击主要针对 CPU 内存,而现在,GPU 也未能幸免。

在 GPUHammer 攻击中,研究人员成功翻转了深度学习模型中的权重指数位。例如,对于 FP16 浮点数,只需翻转一个关键位,指数就能飙升 16 倍,从而导致模型准确率崩塌。在实验中,研究人员对 AlexNet、VGG、ResNet 等经典神经网络架构发起了攻击,结果显示,即使是单个比特的翻转,也可能导致模型性能的彻底崩溃。

在受到攻击后,模型的准确率从 80%(BaseAcc)直接暴跌至 0.1%(DegradedAcc)。

在这种情况下,自动驾驶汽车可能会错误识别交通标志,而在医疗 AI 场景中则可能导致误诊。在云机器学习平台或 VDI 设置等共享 GPU 环境中,恶意租户可能会对相邻的工作负载发起 GPUHammer 攻击,从而影响推理准确性或破坏缓存的模型参数。

英伟达的应对措施及其局限性

为了应对 GPUHammer 攻击,英伟达发布了一份安全通知,建议用户启用系统级纠错码(ECC)保护措施。ECC 的原理是在每段内存数据旁边,额外加几位“校验码”。一旦有比特翻转,ECC 就能自动识别并纠正。然而,ECC 只能修复单个比特错误,遇上双比特翻转,只能发出警告,无法补救。

此外,ECC 还是一把“双刃剑”,在缓解 GPUHammer 的同时,还会导致 GPU 性能的衰退。研究团队指出,系统一般默认禁用 ECC,因为它存储在带外的单独内存区域中,启用它会导致 6.5% 的内存开销和减速。而在 A6000 GPU 上启用 ECC 会导致 12% 内存带宽损失,机器学习应用速度会降低 3%-10%。

未来发展与安全考量

不少网友担心 GPUHammer 是否会影响游戏性能。研究团队表示,虽然目前尚未发现影响 GPU 比特翻转的根本原因,但不同的 GPU 配置、设计在受 Rowhammer 攻击时有显著区别。例如,RTX 3080、A100 等芯片采用了与 A6000 GDDR 完全不同的 DRAM 架构,这些架构的存在使芯片避开了 Rowhammer 的影响。

未来,若 GPU 集成片上 ECC(on-die ECC),则可以纠正单位翻转,并默认检测双位翻转,从而进一步使 Rowhammer 对 GPU 的攻击更加困难。此外,在云端环境中,NVIDIA 的 MIG 和机密计算(CC)技术通过内存隔离,能有效阻止多租户共享同一 DRAM 存储,从而防止 Rowhammer 类攻击生效。

推荐阅读  ARM 架构数据中心客户激增14倍,x86 面临挑战

然而,随着 AI 技术的不断发展,攻击手段也在不断进化。GPUHammer 只是一个开始,未来模型的安全建设仍需加强。