安全与密码学2014ece.cmu.edu编辑精选
不访问内存也能翻转内存位
Flipping bits in memory without accessing them
进阶 · 约 45 分钟读完前置知识:DRAM 工作原理、计算机体系结构基础、操作系统内存管理
导读
这篇 CMU 的论文揭示了 Rowhammer 漏洞:通过反复高频访问 DRAM 相邻行,可以在不直接写入的情况下使目标行的比特位发生翻转。攻击者无需访问目标内存即可破坏数据,对系统安全构成现实威胁。
HN 关注点:是因为这是首个公开演示的、仅靠读操作就能破坏内存的硬件级攻击,讨论焦点集中在 DRAM 的模拟本质、行业是否早已知情以及如何防护。
后来怎么样
这篇论文首次系统揭示了 Rowhammer 攻击,此后衍生出大量后续研究(如 Rowhammer.js、DRAMMER 等跨设备攻击),促使 DRAM 厂商引入 TRR 防护,并成为硬件安全领域的经典工作。
HN 评论精选
这几条评论里:支持 1 补充 2 亲历 1
补充DRAM 本质是模拟器件,硬件设计常在极限边缘运行
芯片层面的真实情况很可怕。一位硬件工程师曾对我说,他们出货的消费级电脑内存系统超频了 15%,'你必须明白,DRAM 本质上是模拟器件'。他在极限使用这些芯片,但心里有数,内存系统从没出过问题。IBM 有一份很棒的关于 PowerPC 内存系统设计的技术报告,总结就是:做好板级布线、遵守一大堆规则,然后准备花六个月在实验室里调传输线参数、重做布线,直到确认能工作为止。
kabdib查看英文原文
What goes on at the chip level is terrifying. "You have to understand," a hardware engineer once said to me, when we shipped a consumer computer that was clocking its memory system 15% faster than the chips were supposed to go, "that DRAMs are essentially analog devices." He was pushing them to the limit, but he knew what it was, and we never had a problem with the memory system. There was a great TR from IBM describing memory system design for one of their PowerPC chips. Summary: Do your board layout, follow all these rules [a big list], then plan to spend six months in a lab twiddling transmission line parameters and re-doing layout until you're sure it works . . .
亲历提供测试工具链接并报告自己的笔记本不受影响
注意:常规的 memtest+ 没有这个测试,请用研究者的分支版本(CMU-SAFARI/rowhammer)。在 Ubuntu 14.04 上用 sudo apt-get build-dep memtest86+ 安装构建依赖。更新:刚在我的廉价联想笔记本上跑完测试,未受影响,松了口气!
hammer_test查看英文原文
Note: the regular memtest+ doesn't have this test. Use the researcher fork: https://github.com/CMU-SAFARI/rowhammer in Ubuntu 14.04, run this to bring all the dependencies for building: sudo apt-get build-dep memtest86+ Update: just finished running the test on my cheap Lenovo laptop. Not affected. phew! :)
补充指出攻击依赖芯片几何结构,并回忆 1980 年类似测试经验
这种内存破坏方法能否成功取决于是否知道内存芯片的几何结构,简单计算哪些地址对应相邻行可能出错。有意思的是这个问题 2015 年才被讨论——1980 年我在 Alpha Microsystems 就设计过内存芯片测试程序,使用基于芯片厂商必须提供的几何信息的转换表。这要求我们每块内存板只用一种芯片,但当年微型计算机很贵,客户期望充分测试。
zanethomas查看英文原文
The success of this approach to corrupting memory depends upon knowing the geometry of the memory chip. Naive calculations of which addresses correspond to an adjacent row may be incorrect. It's interesting to see this issue addressed in 2015. In 1980 I worked at Alpha Microsystems and designed a memory chip test program which used translation tables based upon information we required chip manufacturers to give us in order for their chips to be used in the systems we sold. That approach required us to only put one type of memory chip on a memory board. But back in the day microsytems were expensive and customers expected them to be well-tested.
支持业内人士:服务器 ECC 可防护,DRAM 厂商已悄悄修复
我在芯片行业工作,这是篇好论文。1. 注意 chip-kill/Extended ECC/Advanced ECC/Chipspare 这些服务器厂商的 4 位纠错方法可以防止此问题,更好的高可靠性服务器系统默认启用。2. DRAM 行业几年前就知道这种失效模式,最新生产的 DRAM 颗粒已解决此问题,具体方案因厂商而异,但据我所知没有厂商公开说明过他们的修复方法。
jhowe查看英文原文
I work in the chip industry. This was a good paper. 1. Note that chip-kill/Extended ECC/Advanced ECC/Chipspare which are all similar server vendor methods for 4-bit correction will prevent this problem. These methods are enabled on the better reliability server systems. 2. This failure mode has been known by the DRAM industry for a couple years now and the newest DRAM parts being produced have this problem solved. The exact solution varies by DRAM vendor. I wish I could go into specifics but I am unaware of any vendor that has stated publicly their fix.
相关资源
从这篇论文所有 HN 讨论帖的全部评论里整理出来的链接。
历次讨论
- 2014Hacker News 讨论帖209 分 · 81 评
同领域还值得读
如何入侵一台已关机的电脑:在 Intel ME 中运行未签名代码
How to hack a turned-off computer, or running unsigned code in Intel ME
这篇 Black Hat 2017 白皮书讨论 Intel Management Engine(ME)的安全问题:如何在 ME 中运行未签名代码,以及攻破处于关机状态的电脑的相关…
安全与密码学2017 · 543 分 · 107 评专业 · 约 40 分钟编辑精选比特币:一种点对点的电子现金系统(2008)
Bitcoin: A Peer-to-Peer Electronic Cash System (2008)
中本聪 2008 年发表的比特币白皮书,提出了无需可信第三方的点对点电子现金系统。
安全与密码学2017 · 536 分 · 394 评入门 · 约 45 分钟编辑精选GPRS 加密算法 GEA-1 的密码分析表明存在故意弱点
Cryptanalysis of GPRS Encryption Algorithms GEA-1 suggest intentional weakness
首次公开了对 GPRS 加密算法 GEA-1 和 GEA-2 的密码分析攻击。
安全与密码学2021 · 487 分 · 107 评专业 · 约 90 分钟编辑精选Signal 消息协议的形式化安全分析
A Formal Security Analysis of the Signal Messaging Protocol
用形式化方法分析 Signal 消息协议(TextSecure)的安全性:作者在多阶段密钥交换模型下,借助自动化证明工具对协议的密钥协商与 Double Ratchet 密钥更新…
安全与密码学2016 · 353 分 · 230 评专业 · 约 120 分钟编辑精选A2:模拟恶意硬件
A2: Analog Malicious Hardware
论文研究如何在芯片设计阶段植入模拟电路形式的恶意硬件后门,使其难以被常规检测发现。
安全与密码学2016 · 315 分 · 94 评专业 · 约 75 分钟编辑精选