
安全研究人员已经证明 该 罗哈默的身体弱点构成了严重的威胁 适用于现代图形处理单元,具有两个完整的攻击链,称为 GeForce 和 GDDRHammer与初步研究勉强能够引起极少量比特改变以降低神经网络推理能力不同,这些新型攻击在系统层面实现了绝对的破坏。
在 NVIDIA GPU 上运行标准、非特权代码时, 攻击者可以破坏设备的内部存储器结构,从而获得任意的读写权限。 攻击者可以操控主机 CPU 的整个物理内存。这种跨内存操控使得攻击者能够提升权限,并获得核心操作系统上的超级用户控制台。
规避缓解措施和模式
这些攻击的成功取决于前所未有的技术。 为了绕过 GDDR6 内存中实施的目标行刷新率 (TRR) 缓解措施。GeForge 研究 引入跨越多个更新间隔的非均匀模式通过改变内存行的激活强度和顺序来避免硬件检测。
将通过离线分析获得的物理地址映射应用于动态内存分配, 他们开发了一种利用非线性分配的页面锚定技术。 从物理地址到 L2 缓存集。
Simultáneamente, GDDRHammer团队发现DRAM内存的行 显卡 它们遵循非单调的几何排列方式。这使得他们能够构建高效的双面模式,即使物理地址看起来很远。通过将各个内存库任务分配给不同的流式多处理器并部分同步执行,他们能够在规避安全采样的同时,最大限度地提高激活性能。
这些方法产生了巨大的成果; GeForge 方法在消费级 RTX 3060 显卡中导致了 1,171 位数据更改,在专业级 RTX A6000 显卡中导致了 202 位数据更改。而 GDDRHammer 平均每 GB 进行了 1,032 次修改,比之前的尝试增加了 64 倍。
操作页表和内存按摩
为了将这些电磁干扰武器化, 攻击者的目标是GPU内存管理单元管理的分层页表。由于控制器通常将这些结构分配在受保护或不可预测的区域中,因此攻击依赖于内存操作技术来强制将页表项放置在攻击者知道存在漏洞的物理位置。
攻击 GDDRHammer 使用共享内存映射来淹没分配器。缩短页表区域与用户控制内存之间的差距。 GeForge 专门针对 Pages 目录中的条目进行篡改。 0 (PD0)。
攻击者通过精心分配和释放统一虚拟内存片段,将新创建的 PD0 结构直接指向特定的 4 KB 子页。一旦到达指定位置,该进程就会修改条目物理地址指针中的一位,将其重定向到一个完全由恶意代码控制的伪造页表。
通过 PCIe 总线进行权限提升
El 对显卡页表的控制权直接转化为对计算机中央处理器的控制权。NVIDIA 页表项包含一个特定的起始字段,该字段决定关联的物理地址是位于设备的本地内存中还是位于主机系统的内存中。 通过修改伪造条目中的这一字段, 任何操作 后来的阅读或写作 GPU 生成的数据通过 PCIe 总线直接传输到物理 RAM。 的主人。
这种直接访问内存的方式绕过了 CPU 自身的内存管理单元和操作系统的写复制保护机制。 在其实际演示中,研究人员 他们利用这一功能将 C 标准库代码段直接写入主机内存。 具体来说,他们将机器代码注入到日志关闭函数中,随后由具有提升权限的合法程序执行该函数,从而立即授予攻击者对系统的绝对访问权限。
硬件普及率及缓解措施
La大量测试证实,这种漏洞在目前的硬件中普遍存在。GDDRHammer 的研究评估了 25 款高端显卡,发现基于 Ampere 架构的 17 款 RTX A6000 型号中有 16 款容易受到此类攻击。虽然纠错码 (ECC) 内存可以通过纠正单比特错误来降低攻击的可靠性,但由于性能损失,许多工作站显卡默认禁用此功能,而大众市场型号则完全没有此功能。
最有效的即时防御 防止主机被入侵是 应用输入输出存储器管理单元(IOMMU)。 启用后,IOMMU 会将 GPU 的直接访问限制在明确授权的主机页面帧,从而阻止伪造的开放映射。然而,两个研究团队都指出,出于兼容性考虑,IOMMU 在商业 Linux 系统中通常默认处于禁用状态,这使得大量机器容易受到此类攻击。
最后,如果您有兴趣了解更多信息,可以查阅详细信息 以下链接。