2024-04-11 12:49

谷歌Chrome浏览器推出了一项新的安全功能来解决内存损坏问题

作为市场上使用最广泛的网页浏览器,谷歌Chrome已经成为攻击目标有一段时间了。正因为如此,谷歌总是在安全方面修修补补,以保持领先于黑客,从来没有做得很好,漏洞,以及其他一系列问题。

在最新的公告中,Google推出了V8沙盒,这是一个轻量级的进程内沙盒,用于V8 (Google Javascript引擎),旨在防止引擎中的常见漏洞。

根据V8沙箱自述,“沙箱通过将V8执行的代码限制在进程虚拟地址空间的一个子集(“沙箱”)来限制典型V8漏洞的影响,从而将其与进程的其余部分隔离开来。”

这只适用于软件(带有硬件支持的选项,参见下面链接的相应设计文档),通过有效地将原始指针转换为沙盒基础的偏移量或沙盒外指针表的索引。原则上,这些机制非常类似于现代操作系统使用的用户区/内核分离(例如unix文件描述符表)。

V8沙盒的最初设计文件是在近三年前推出的,从那以后,它就不再被认为是实验性的了。最初的设计文件阐述了其动机:“V8漏洞通常允许构建异常强大和可靠的漏洞。此外,这些错误不太可能通过内存安全语言或即将推出的硬件辅助安全特性(如MTE或CFI)来缓解。因此,V8对现实世界的攻击者特别有吸引力。”

谷歌开发这个新的Chrome安全功能的主要原因是V8已经成为许多Chrome零日漏洞的中心。为此,Chromium团队声明(在V8 Sandbox Readme中),“沙箱假设攻击者可以任意并发地修改沙箱地址空间中的任何内存,因为这个原语可以从典型的V8漏洞中构建。”

如果你担心这个新的沙盒特性会减慢浏览器的速度(这是沙盒可以做到的),团队的基准测试似乎表明,典型的工作流只增加了大约1%。

V8沙箱仍在开发中,但在Android、ChromeOS、Linux、MacOS和Windows上,它应该默认从Chrome版本123开始启用。这意味着它应该很快就会推出。

相关推荐