返回

Spectre:从 V8 视角回顾充满挑战的一年

前端

2018 年 1 月 3 日,Google Project Zero 和其他机构披露了第一批影响 CPU 的新型漏洞,这些漏洞称为 Spectre。Spectre 漏洞利用了投机执行来泄露信息,而投机执行是一种 CPU 技术,可以提高性能。

在接下来的几个月里,V8 团队一直在努力保护用户免受 Spectre 漏洞的影响。我们发布了安全更新,实施了缓解措施,并与浏览器开发人员合作进行修复。

V8 的安全更新

V8 发布了多项安全更新来保护用户免受 Spectre 漏洞的影响。这些更新包括:

  • V8 6.6.302.45:此更新包含针对 Spectre Variant 1 和 Spectre Variant 2 的缓解措施。
  • V8 6.7.275.55:此更新包含针对 Spectre Variant 3 的缓解措施。
  • V8 6.8.299.25:此更新包含针对 Spectre-NG 的缓解措施。

V8 的缓解措施

V8 还实施了多项缓解措施来保护用户免受 Spectre 漏洞的影响。这些缓解措施包括:

  • 投机执行禁用:此缓解措施可以禁用投机执行,从而防止 Spectre 漏洞的利用。
  • 页面粒度隔离:此缓解措施可以将每个网页与其他网页隔离,从而防止 Spectre 漏洞的利用。
  • 间接分支预测禁用:此缓解措施可以禁用间接分支预测,从而防止 Spectre Variant 2 的利用。

V8 与浏览器开发人员的合作

V8 还与浏览器开发人员合作,对浏览器进行了修复,以保护用户免受 Spectre 漏洞的影响。这些修复包括:

  • Chrome 64:此版本包含针对 Spectre Variant 1 和 Spectre Variant 2 的修复。
  • Chrome 65:此版本包含针对 Spectre Variant 3 的修复。
  • Chrome 66:此版本包含针对 Spectre-NG 的修复。

Spectre 漏洞的后续影响

Spectre 漏洞对 V8 团队来说是一个巨大的挑战,但我们也从中吸取了宝贵的经验。我们现在对 CPU 漏洞有更深入的了解,我们也更加了解如何保护用户免受这些漏洞的影响。

我们相信,V8 团队已经为保护用户免受 Spectre 漏洞的影响做好了充分的准备。我们将在未来继续努力,确保 V8 是一个安全且可靠的 JavaScript 引擎。