近日,苏黎世联邦理工学院的研究人员开发出了 Rowhammer DRAM 攻击的新变种 ZenHammer,适用于AMD Zen 微体系结构的 CPU,该微体系结构可以映射 DDR4 和 DDR5 内存芯片上的物理地址。

打开网易新闻 查看精彩图片

值得一提的是,AMD Zen 芯片和 DDR5 内存模块此前被认为不太容易受到 Rowhammer 攻击,研究人员的最新发现对这一观点提出了“挑战”。

攻击背景

Rowhammer 主要利用现代动态随机存取存储器 (DRAM) 的物理特性,通过读/写操作重复访问(\"锤击\")特定行的存储单元,改变其中的位值,从而更改数据。存储单元以电荷的形式存储信息,电荷决定了内部 1 或 0 的位值。

由于现代芯片中存储单元的密度增加,反复 \"敲击 \"可以改变相邻行的电荷状态,这一过程被称为 \"位翻转\"。通过在特定位置策略性地诱导这些位翻转,威胁攻击者就可以获取敏感数据(例如加密密钥)或提升权限。

目前,这种技术已经在英特尔和 ARM CPU 上得到了验证,但 AMD 的 Zen 架构 CPU 由于其固有的特点(如未知的 DRAM 寻址方案以及难以实现足够高的行激活吞吐量),还没有被证明会受到此类攻击的影响。

近日,苏黎世联邦理工学院的研究人员通过对 AMD 平台中复杂和非线性的 DRAM 寻址功能进行逆向工程,利用 ZenHammer 解决了这些“挑战”。

打开网易新闻 查看精彩图片

逆向工程地址映射和偏移(苏黎世联邦理工学院)

苏黎世联邦理工学院的研究人员还开发了新颖的同步技术,使攻击时间与 DRAM 的刷新命令一致,这对于绕过目标行刷新 (TRR) 等缓解措施至关重要。此外,研究人员还优化了内存访问模式,以提高行激活率,这是 Rowhammer 攻击成功的关键因素。

测试结果

研究人员证明,ZenHammer 攻击可以诱导 AMD Zen 2(Ryzen 5 3600X)和 Zen 3 平台(Ryzen 5 5600G)上的 DDR4 设备发生位翻转。实验过程中,在 DDR4/AMD Zen 2 平台的 10 次测试中成功了 7 次,在 DDR4/AMD Zen 3 平台的 10 次测试中成功了 6 次。

打开网易新闻 查看精彩图片

针对不同平台的 ZenHammer 位翻转成功案例(苏黎世联邦理工学院)

研究人员还在 AMD Zen 4 微架构平台上的 DDR5 芯片上取得了成功,不过,测试只在 10 个系统中的一个(Ryzen 7 7700X)上取得了成功,这表明 \"DDR5 的变化,如改进的 Rowhammer 缓解措施、片上纠错码(ECC)和更高的刷新率(32 毫秒),使得触发位翻转变得更加困难\"。(该平台以前被认为可以更好地抵御 Rowhammer 攻击)

值得一提的是,这些位翻转并不停留在理论上,分析人员能够模拟针对系统安全性的成功攻击,包括操纵页表条目进行未经授权的内存访问。

打开网易新闻 查看精彩图片

ZenHammer 的可利用性和每次攻击所用时间(苏黎世联邦理工学院)

2021 年第四季度生产的一款 Zen 3 测试系统上,研究人员从发现可利用的位翻转开始,通过 10 次成功攻击,获得了 root 权限,平均耗时 93 秒。

最后,研究人员指出,这种攻击方式非常复杂,威胁攻击者想要成功实施需要对软件和硬件组件都有深入的了解。AMD CPU 用户抵御这一威胁的方法包括应用软件补丁和固件更新。