Rowhammer 漏洞允许非特权攻击者更改或破坏存储在易受攻击的内存芯片中的数据,现在几乎可以在所有 DDR4 模块上使用,这是由于中性防御芯片制造商添加的一种新方法,使他们的产品更能抵抗此类攻击。
Rowhammer 攻击的工作原理是每秒数百万次访问或锤击易受攻击的芯片内的物理行,这种方式会导致相邻行中的位翻转,这意味着 1 变为 0,反之亦然。研究人员表明,这些攻击可用于为不受信任的应用程序提供几乎不受限制的系统权限、绕过旨在防止恶意代码访问敏感操作系统资源的安全沙箱,以及根或感染Android 设备等。
之前所有的 Rowhammer 攻击都以统一的模式敲击行,例如单面、双面或 n 面。在所有三种情况下,这些“攻击者”行(意味着在附近的“受害者”行中导致位翻转的那些行)被访问的次数相同。
绕过所有 DRAM 内缓解措施
周一发表的研究提出了一种新的 Rowhammer 技术。它使用非均匀模式访问具有不同频率的两个或多个攻击者行。结果:测试池中所有 40 个随机选择的 DIMM 都经历了位翻转,而在同一研究人员之前的工作中测试的 42 个芯片中有 13 个。
“我们发现,通过创建特殊的内存访问模式,我们可以绕过部署在 DRAM 中的所有缓解措施,”两位研究作者 Kaveh Razavi 和 Patrick Jattke 在一封电子邮件中写道。“根据我们的分析,这将可能被已知攻击入侵的设备数量增加到 80%。由于其硬件性质,这些问题无法修补,并将在未来很多年继续存在。”
非均匀模式对目标行刷新起作用。缩写为 TRR,缓解措施因供应商而异,但通常会跟踪一行被访问的次数,并在有滥用迹象时为相邻的受害者行充电。这种防御的消除给芯片制造商带来了进一步的压力,以减轻许多人认为较新类型的存储芯片能够抵抗的一类攻击。
逐渐加快速度
个人电脑、笔记本电脑和手机受新发现的影响最大。AWS 和 Azure 等云服务在很大程度上不受 Rowhammer 的影响,因为它们使用包含称为 ECC 的防御的高端芯片,错误纠正代码的缩写。保护的工作原理是使用所谓的内存字来存储 DIMM 内数据位旁边的冗余控制位。CPU 使用这些字来快速检测和修复翻转位。
ECC 最初旨在防止自然发生的现象,即宇宙射线在较新的 DIMM 中翻转位。Rowhammer 出现后,当 ECC 被证明是最有效的防御时,它的重要性就增加了。但2018 年发表的研究表明,与许多专家认为的相反,在对 DDR3 DIMM 中的缓解措施进行逆向工程后,也可以绕过 ECC。
研究人员 Razavi 和 Jattke 说:“在对 ECC 功能进行逆向工程后,带有 ECC 的 DDR4 系统可能更容易被利用。”
除了苏黎世联邦理工学院的 Razavi 和 Jattke,这项研究背后的团队还包括高通的 Victor van der Veen、阿姆斯特丹 VU 的 Pietro Frigo 和 Stijn Gunter。他们论文的标题是BLACKSMITH:频域中的可伸缩行锤击。
研究人员还引用了之前提到的他们过去的 TRR 研究,以及这里的发现表明,在双刷新模式下运行芯片是一种“弱解决方案,无法提供完整的保护”来抵御 Rowhammer。研究人员还表示,双刷新率会增加性能开销和功耗。
从这项最新研究中得出的图景是,Rowhammer 现在仍然不会对现实世界构成太大威胁,但多年来攻击的渐进式进步可能有一天会改变这一点。
研究人员写道:“结论是,我们的工作证实了 DRAM 供应商关于 Rowhammer 保护的说法是错误的,并诱使您产生错误的安全感。” “当前部署的所有缓解措施都不足以完全抵御 Rowhammer。我们的新模式表明,攻击者可以比以前假设的更容易利用系统。”