2026 年 4 月,两支独立研究团队公开了针对 Nvidia Ampere 架构 GPU 的新型 Rowhammer 攻击研究成果。这两种攻击 ——GDDRHammer 与 GeForge—— 首次实现了从 GPU 显存(GDDR)发起攻击并获取主机完整 root 控制权的攻击路径。与传统 CPU Rowhammer 攻击不同,此次攻击绕过了所有现有 CPU 端缓解措施,将攻击面从系统内存扩展至图形处理器的专用显存,为云环境与多租户场景带来了全新的安全威胁。
Rowhammer 攻击的基本原理与演进脉络
Rowhammer 攻击利用了现代动态随机存取存储器(DRAM)物理层面的一个固有缺陷:当某一内存行(Row)被频繁且高速地重复访问时,会在相邻行之间产生电气干扰,导致存储的比特位发生翻转,即 0 变为 1 或 1 变为 0。这一现象最早于 2014 年被卡内基梅隆大学研究团队系统性地验证并公开。2015 年,另一研究团队进一步演示了通过精确控制比特翻转位置,可将普通用户权限提升至 root 级别或突破沙箱隔离。
过去十年间,Rowhammer 攻击技术经历了显著演进:攻击目标从 DDR3 扩展至 DDR4 与带错误纠正码(ECC)的内存;攻击手法从基础的行锤击(Rowhammer)发展出 Rowhammer feng shui、RowPress 等精细化内存 massage 技术;攻击场景从本地系统延伸至网络触发、 Android 设备 root 乃至加密密钥窃取。2025 年,研究人员首次成功在配备高带宽显存(GDDR)的 Nvidia GPU 上实现位翻转,标志着 Rowhammer 攻击正式进入 GPU 时代,但当时仅实现了八个比特翻转,且仅能干扰神经网络输出。
GDDRHammer:GPU 页表操控实现主机内存访问
GDDRHammer(Graphics DDR / Greatly Disturbing DRAM Rows)由来自多所学术机构的研究团队开发,针对 Nvidia RTX 6000(Ampere 架构)显卡实施攻击。该攻击实现了平均每内存银行 129 次比特翻转,相比 2025 年的 GPUHammer 提升了 64 倍。更关键的是,GDDRHammer 成功利用这些比特翻转突破了 GPU 页表(Page Table)的内存隔离机制。
GPU 页表与 CPU 页表功能类似,用于存储虚拟地址到物理 DRAM 地址的映射关系。Nvidia GPU 驱动将页表存储在受保护的专用内存区域,该区域经过特殊设计以抵御 Rowhammer 攻击产生的电气干扰。GDDRHammer 通过一种名为内存按摩(Memory Massaging)的技术解决这一障碍:首先利用 Rowhammer 翻转影响受保护区域分配权限的比特位,诱导内存分配器将页表重新放置到易受攻击的可变区域。一旦页表迁移成功,攻击者即可修改页表条目,获取对全部 GPU 内存的任意读写权限。
更为严重的是,研究人员发现攻击者可以进一步修改 GPU 页表使其指向主机 CPU 物理内存。由于 GPU 与 CPU 共享同一物理地址空间,恶意修改后的页表能够将 GPU 内存访问重定向至主机系统内存,从而实现对全部 CPU 内存的读写能力,最终获得主机完整控制权。研究团队在公开信中强调:“我们的工作表明,GPU 内存上的 Rowhammer 与 CPU 内存上的 Rowhammer 同样严重,而现有 CPU 端的所有软件与硬件缓解措施在面对来自 GPU 的攻击时均无法防御。”
GeForge:页目录污染实现同等权限提升
GeForge(Hammering GDDR Memory to Forge GPU Page Tables for Fun and Profit)与 GDDRHammer 几乎同时独立开发完成,两者在攻击目标与影响范围上高度重合,但在技术实现细节上存在差异。GDDRHammer 攻击的是最后一层页表(Last-level Page Table),而 GeForge 则针对最后一层页目录(Page Directory)进行污染。
GeForge 在测试中展现了更为惊人的比特翻转能力:针对 RTX 3060 实现了单次攻击 1,171 次比特翻转,针对 RTX 6000 实现了 202 次比特翻转。其内存按摩流程更为精密:首先隔离包含目标地址的 2 MB 页框,随后使用稀疏统一虚拟内存(Sparse UVM)访问耗尽驱动的默认低内存页表分配池,在精确时刻释放隔离出的页框使其成为新的页表分配区域,进而推进分配使页目录条目落入易受攻击的子页面,最终触发比特翻转使被污染的页目录条目将指针重定向至攻击者控制的内存区域,在其中填充伪造的页表条目。
GeForge 针对 RTX 3060 的概念验证漏洞利用最终成功打开了一个 root shell 窗口,攻击者可在主机上以无限制权限执行任意命令。研究团队在论文中声明:“这是首个实现主机权限提升的 GPU 端 Rowhammer 漏洞利用。”
攻击面分析与威胁模型
此次披露的攻击具有若干值得重点关注的安全特征。首先,攻击门槛相对较低。高端 GPU 通常定价 8,000 美元以上,在云环境中最常见的使用模式是多用户共享同一块 GPU 实例,这意味着恶意租户可利用共享资源对同一主机上的其他租户或云平台本身发起攻击。其次,攻击无需特殊权限。攻击者只需获得在目标 GPU 上分配和执行计算任务的能力,即可启动 Rowhammer 攻击,无需提前获取 root 或管理员权限。
需要特别指出的是,IOMMU(输入输出内存管理单元)禁用是此类攻击的先决条件。IOMMU 负责将设备可见的虚拟地址映射至主机物理地址,可用于限制 GPU 对敏感内存区域的访问。默认 BIOS 设置通常禁用 IOMMU 以最大化兼容性与性能,这一设计选择直接暴露了攻击面。研究团队明确指出:启用 IOMMU 可有效阻止攻击,因为 IOMMU 可以简单地将 GPU 访问限制在主机敏感内存区域之外。
防御策略与可落地参数
针对 GDDRHammer 与 GeForge 攻击,可实施以下多层防御策略:
BIOS 级配置启用 IOMMU:这是最直接有效的缓解措施。进入 BIOS 设置,找到 IOMMU 或类似命名选项(如 "Intel VT-d" 或 "AMD-Vi")并启用。启用后 GPU 对主机内存的直接访问将受到 IOMMU 隔离,页表污染攻击将无法将访问重定向至任意主机物理地址。需要权衡的是,IOMMU 启用后会带来约 5%–15% 的地址转换开销,在高性能计算场景下可能影响 GPU 计算性能。
启用 GPU ECC 内存纠错:Nvidia 专业级 GPU 支持 ECC 功能,可通过 nvidia-smi 命令行启用。执行 nvidia-smi -e 1 可为指定 GPU 启用 ECC 模式。ECC 通过增加额外纠错位检测并修复单比特翻转,理论上可阻止大多数位翻转攻击。需要注意的是,ECC 模式会消耗约 12.5% 的可用显存容量(每 8 位数据增加 1 位纠错码),同时也会引入小幅性能开销。
监控 GPU 内存错误率:通过 nvidia-smi 可监控 GPU 内存错误计数。使用 nvidia-smi -q 获取详细内存错误统计,建议建立基线并对错误数突增设置告警。正常情况下 ECC 启用后错误计数应保持在极低水平,若出现多位错误事件可能表明存在 Rowhammer 攻击尝试。
云环境隔离策略:对于多租户云环境,建议对 GPU 实例实施硬件级隔离或使用 vGPU 技术分配专属显存分区。监测共享 GPU 租户的异常内存访问模式,特别是高频率的重复访问行为可能预示 Rowhammer 攻击正在进行。
需要注意的是,当前已确认存在漏洞的仅为 Ampere 架构的 RTX 3060 与 RTX 6000 两款显卡。较新的 Ada 架构 RTX 6000 因采用新版 GDDR 显存而未受影响。但鉴于学术研究通常滞后于产品发布周期,未来更大范围的 GPU 型号可能面临类似威胁,研究团队已建立公开信息站点收集相关技术细节。
资料来源:Ars Technica 2026 年 4 月 2 日报道《New Rowhammer attacks give complete control of machines running Nvidia GPUs》