来自美国、奥地利和澳大利亚的一组学者今天发表了新的研究报告,详细阐述了罗WHAMMER攻击的又一变化。
这个新的Rohammer品种的新颖性----研究团队已经命名了Ramblem----它可以用来从目标设备窃取信息,而不是改变现有数据或者提升攻击者的特权,就像以前所有的Rohammer攻击一样,过去都做过。
对于不熟悉“Rowhammer”一词的读者来说,这是利用现代存储卡中的硬件设计缺陷(也称为RAM)的一类漏洞的名称。
在默认情况下,存储卡将数据存储在存储单元中,该数据在RAM的实际硅芯片上以栅格的形式排列在RAM的实际硅片上。
早在2014年,学者们就发现,通过反复读取一行存储的数据,他们可以产生一种电荷,从而改变存储在附近内存行中的数据。
通过协调这些重复的读取操作,在名为行锤击的操作中,它们可能导致数据损坏或以恶意方式操纵数据。
多年来,学者们极大地扩展了原始Rowhammer研究的方法和开发场景,进行了疯狂的实验,并展示了如何在现实世界中使用该技术:
但在今天发表的一篇研究论文中,学者们公布了RAMBleed,这是第一次Rowhammer攻击,能够主动推断和窃取RAM卡中的数据。
要做到这一点,研究人员必须提出并结合不同的技术,当组装,将允许RAMBleed攻击发生。这包括:
如上图所示,RAMBleed攻击发生在攻击者敲击A0和A2并读取“取样区域”“秘密”块附近A1行上的位翻转(修改)时。
这样做的想法是,通过仔细地将数据按攻击者想要并知道的格式排列在RAM中,攻击者就可以在它想要窃取的“秘密”数据附近的一个区域读取位翻转。
通过将这些新技术结合起来,研究人员表示,他们能够在演示Linux环境中从OpenSSH服务器窃取RSA密钥。
此外,使用ECC保护的现代RAM卡无法阻止RAMBleed攻击。ECC内存是通过将rowhammer诱导的位翻转回原来的状态来工作的,它并不保护数据的完整性,而只是对其进行修正。
学者们说:“RAMBleed不一定要求攻击者读取该位以确定它是否翻转。相反,攻击者安装RAMBleed所需的只是一个指示,表明取样页中的某个位已翻转(并随后更正)。”
“[T]ECC校正算法的同步特性通常通过定时信道公开这种信息,其中需要纠错的存储器访问比正常访问慢得多。”
这使得研究人员/攻击者能够知道哪些内存位已被纠正,并推断出它们从/被更正到-使RAMBleed攻击成为可能的值。
该学术小组表示,他们向英特尔、AMD、OpenSSH、微软、苹果和红帽公司通报了他们的发现。