Google 发布了未修复的 Chromium 漏洞利用代码

Google 采取了罕见的步骤,发布了 Chromium 引擎中仍未修复的漏洞的利用代码。此举在安全社区引发了广泛讨论,因为发布未修补漏洞的功能性利用代码通常会在补丁部署之前增加恶意行为者大规模利用的风险。

理解漏洞

所讨论的漏洞集中在 Chromium 浏览器中 service worker 的行为。Service worker 是在后台运行的脚本,与网页分离,能够实现推送通知和离线功能等特性。通常,这些 worker 有明确的生命周期,并由浏览器终止以节省资源。

然而,此特定漏洞允许 service worker 持续存在无限期。通过启动一个异常大文件的下载并阻止下载完成,service worker 可以有效地“欺骗”浏览器让进程永远保持活跃。

潜在的安全影响

虽然该漏洞可能不会立即允许远程代码执行(RCE)或完全系统妥协,但其影响不容忽视。主要风险源于恶意网站能够在用户机器上维持持久存在的能力。

资源滥用和跟踪

持久的 service worker 可被用于多种恶意目的:

  • 加密劫持: 工作器可在用户不知情的情况下在后台用于挖掘加密货币。
  • 僵尸网络整合: 浏览器可被转换为分布式拒绝服务(DDoS)攻击或其他协调的僵尸网络活动的节点。
  • 用户跟踪: 通过维持长期连接,攻击者可能跟踪用户 IP 地址活动较长时间。

网络访问和 CORS 限制

service worker 发起网络请求的能力受到跨源资源共享(CORS)策略的限制。正如社区分析所指出,工作器可以发起请求,但仅限于不需要 CORS 的请求。这限制了攻击者从其他安全网站窃取敏感数据的能力,但并未完全消除风险。

"它可以发起请求,但仅限于无 CORS,这对于访问公司 VPN 后面的一些弱保护的 HTTP 资源可能很有用..."

这意味着内部的、弱保护的 HTTP 资源——例如公司内网或 VPN 后面的资源——可能容易受到持久 service worker 的探测或数据外泄。

公开披露的争议

发布未修复漏洞利用代码的决定偏离了标准的负责任披露做法。通常,供应商会在补丁可用之前等待,然后才发布可用于构建利用的技术细节。通过现在发布代码,Google 实际上为攻击者提供了一份蓝图,以便在修复实施之前针对数百万基于 Chromium 的浏览器(包括 Chrome、Edge 和 Brave)进行攻击。

Sources