Google发布了对其GitHub上的Chrome浏览器进行幽灵攻击的概念验证代码。专家们决定发布概念证明代码,以证明基于Web的幽灵攻击的可行性。
PoC代码使用JavaScript编写,可在英特尔Skylake CPU上的Chrome 88上运行,它允许以1kB / s的速度从设备内存中下载数据。
“今天,我们共享了概念验证(PoC)代码,该代码证实了幽灵攻击JavaScript引擎的实用性。我们使用Google Chrome浏览器来演示我们的攻击,但这些问题并不是Chrome特有的,我们估计其他浏览器也同样容易受到这种攻击。” Google发布的帖子声称,“我们已经在https://leaky.page/上提供了该攻击的交互式演,;代码和更详细的文章我们已经发布在Github上(https://github.com/google/security-research-pocs/tree/master/spectre.js)。”
Google研究人员推测,PoC代码可在其他CPU(不同的供应商和/或代),操作系统和Chromium版本上使用。
下面的演示描述发布在一个由Google设置的网站上,用来托管PoC代码。
“此演示分为三个部分:
1.校准计时器以观察CPU预测执行的副作用。
2.推断JavaScript数组的内存布局的演示。
3.Spectre的概念证明本身,泄漏内存的浏览器渲染过程。”
在2018年1月,该专家设计了两次攻击,分别称为 Meltdown (CVE-2017-5754)和 Spectre (CVE-2017-5753和CVE-2017-5715),可用来窃取CPU处理的敏感数据。
两种攻击都利用大多数现代CPU使用的“预测执行”技术来优化性能。
为了保护系统免受Bot Meltdown和Spectre攻击,可以实施称为内核页表隔离(KPTI)的强化技术。该技术允许将内核空间与用户空间内存隔离开。
Google发布的PoC代码允许从内存中恢复缓存的数据,包括敏感数据(例如加密密钥)。
可以轻松设置已发布的PoC代码,因为它无需像SharedArrayBuffer这样的高精度计时器即可工作。
“对于已发布的PoC,我们设置了一个简单的Variant 1小工具”,Google继续说道,“这个特定的小工具可以在软件层面上缓解。但是,Chrome的V8小组得出的结论是,其他小工具并不是这样,“我们发现,有效缓解Spectre的某些变体(尤其是变体4)在软件中根本不可行。” 我们希望安全社区继续我们的研究和开发代码,开发利用其他幽灵小工具的代码。”
Google专家还开发了其他具有不同属性的PoC漏洞,但他们没有发布这些漏洞。这些PoC代码之一允许以8kB / s的速率泄漏数据,但是由于使用performance.now()API作为5μs(5000ms)精度计时器,因此它的稳定性较差。另一个PoC使用的计时器为1ms甚至更短,并且仅以60B / s的速率泄漏数据。
Google建议开发人员使用新的安全机制来防范硬件攻击和常见的Web级 跨站点泄漏。
标准保护包括 X-Content-Type-Options,X-Frame-Options header和SameSite cookie的使用。但是研究人员还建议启用以下保护措施:
Google安全团队发布了一个名为Spectroscope的Chrome扩展程序原型,该扩展程序可让网络开发人员保护其网站免受Spectre的攻击。
本文翻译自:https://securityaffairs.co/wordpress/115573/hacking/google-chrome-spectre-poc.html如若转载,请注明原文地址。
本文转载自微信公众号「SQL数据库」,作者丶平凡世界 。转载本文请联系开发公众...
idea官方推送了2020.2.4版本的更新,那么大家最关心的问题来了,之前激活idea202...
本文实例讲述了AJAX+Servlet实现的数据处理显示功能。分享给大家供大家参考,具...
来源:DeepenStudy 漏洞文件:js.asp % Dimoblog setoblog=newclass_sys oblog.a...
本文转载自微信公众号「SH的全栈笔记」,作者SH。转载本文请联系SH的全栈笔记公...
大家好,我是狂聊君。 今天来聊一聊 Mysql 缓存池原理。 提纲附上,话不多说,直...
前言 项目开发中不管是前台还是后台都会遇到烦人的null,数据库表中字段允许空值...
问题:我们在做flex的开发中,如果用到别人搭建好的框架,而别人的server名称往...
CKeditor,以前叫FCKeditor,已经使用过好多年了,功能自然没的说。最近升级到3....
在Flash Player 10.1及以上版本中,adobe新增了全局错误处理程序UncaughtErrorEv...