哥伦比亚大学的四位研究人员认为,可以通过CPU缓存来监视用户在浏览器中进行的快捷键及鼠标操作。
该漏洞对最新型号的英特尔CPU有效,比如Core i7。另外,它还需要运行在支持HTML5的浏览器上。总的来看,约有80%的台式机满足这两个条件。
哥伦比亚大学的四位研究人员设想了这种攻击:通过恶意网络广告向用户投放JavaScript,然后计算数据到达CPU三级缓存的时间,进而推断用户正在进行的具体操作。
研究人员提醒谷歌、微软、火狐、苹果尽快升级自家的浏览器,以封堵该新型攻击向量。不过目前还没有补丁发布。
这种攻击方式成本极低,特别适合三流黑客使用。使用这种弹窗攻击方式的人,可能和那些成天张贴网络小广告的是同一拨人,这样他们在烦你的同时还能追踪你。”
研究人员发表的论文中提到,受害者不需要做任何事情,只是访问带有恶意JS的网页就有可能遭到这种攻击。
这种攻击方式能够让一个进程收集与之并行的其它进程的信息。不管是进程、用户、还是虚拟机,只要和加载JS的进程公用同一个CPU,相关信息都会暴露。
一旦CPU加载了恶意的JavaScript进程,它就会将缓存装填为特定状态,然后等待用户进行某个操作,比如按下按键,进而用浏览器自带的高精度计时器记录操作信息通过内存块的时间。如果某个执行周期比其它的完成得更快,此时内存块就还在缓存里。有了这个信息,攻击者可以绘制内存对按下按键和鼠标移动的反应情况,进而重塑用户使用情景。
在带有i7处理器、运行OS X版本10.10.2的Mac上,对Firefox 35.0.1浏览器进行测试,恶意JS在一分钟内就能绘制出三级缓存的一半内容,15秒内即可绘制四分之一。
该研究本质上是很学院派的,并不容易实现。但它给我们了很好的启示,因为传统的边信道攻击都要求黑客从物理上接近其受害者,并有在本地执行任意代码的权限。(查看其他8种边信道攻击)
研究人员认为,这是第一种同时可以针对上百万目标的边信道攻击。任何使用新型英特尔CPU和HTML5浏览器的设备都有可能成为目标。AMD公司的CPU由于其缓存设计,对这种攻击基本免疫。
这种新型攻击给出了边信道攻击的一种前所未有的思路,同时也提醒各机构注意建立防御边信道攻击的算法和系统。
研究人员在浏览器打上补丁之前不会放出攻击的具体代码,他们建议,用户在使用浏览器时应当尽可能关闭不用的标签页,尤其是在进行重要操作时。