中文

Rowhammer.js:一种利用 JavaScript 的远程软件诱发故障攻击

密码学与安全 2016-04-06 v5

摘要

软件安全的一个基本假设是,内存位置只能由可写入该内存位置的进程修改。然而,最近的研究表明,DRAM 中的寄生效应可以在不访问某个内存单元的情况下,通过高频访问其他内存位置来改变该内存单元的内容。这种所谓的 Rowhammer 漏洞存在于当今大多数内存模块中,并对所有受影响系统的安全产生致命后果,例如权限提升攻击。迄今为止,所有与 Rowhammer 相关的研究和攻击都依赖于缓存刷新指令的可用性,以足够高的频率引起对 DRAM 模块的访问。我们通过击败复杂的缓存替换策略克服了这一限制。我们表明,仅通过常规内存访问即可迫使缓存进入快速驱逐状态,从而触发 Rowhammer 漏洞。这使得在高度受限甚至脚本环境中也能触发 Rowhammer 漏洞。我们演示了一种全自动攻击,仅需一个包含 JavaScript 的网站即可触发远程硬件上的故障。借此,我们可以无限制地访问网站访客的系统。我们表明该攻击在现成系统上有效。现有对策无法防御这种新型 Rowhammer 攻击。

关键词

引用

@article{arxiv.1507.06955,
  title  = {Rowhammer.js: A Remote Software-Induced Fault Attack in JavaScript},
  author = {Daniel Gruss and Clémentine Maurice and Stefan Mangard},
  journal= {arXiv preprint arXiv:1507.06955},
  year   = {2016}
}

备注

This paper has been accepted at the 13th Conference on Detection of Intrusions and Malware & Vulnerability Assessment (DIMVA) 2016. The final publication is available at link.springer.com