← 返回信息流
AI 资讯Hacker News·12 小时前

Google Chrome将封杀所有uBlock Origin绕过方案

原标题:Google Chrome is killing all uBlock Origin bypasses, Edge, Opera to follow

速览

Google Chrome即将实施新政策,全面封杀uBlock Origin广告拦截插件的绕过方案。此举旨在确保广告展示规则得到严格执行,提升用户体验的一致性。Microsoft Edge和Opera等基于Chromium内核的浏览器预计也将跟进这一措施。

AI 深度解读

背景

长期以来,浏览器扩展生态正处于从 Manifest V2 (MV2) 向 Manifest V3 (MV3) 过渡的关键阶段。这一转变在 Google Chrome 中尤为显著,目前看来,Chrome 正在进入 MV2 弃用的最后阶段。近期在 W3C WebExtensions 社区组 GitHub 仓库中讨论线程的曝光,进一步证实了最新及即将发布的 Chrome 版本将成为支持 MV2 扩展的最终版本。

Chromium 贡献者 Andrey Bershanskiy 分享了近期 Chromium 代码库的变更细节。据 Google 工程师 Devlin Cronin 评论,Chrome 已经开始移除那些曾经用于控制 MV2 可用性的功能标志(feature flags)。其中,允许用户控制禁用 MV2 插件的 Chromium 功能标志 kExtensionManifestV2Disabled 已被完全移除。这意味着,用户很可能再也无法在浏览器扩展列表中看到 uBlock Origin 等依赖 MV2 架构的插件。

核心内容

Google 工程师 Devlin Cronin 详细阐述了移除 MV2 支持的原因及具体技术变更。他指出,由于技术复杂性、技术债务以及随之而来的安全风险,Google 无法无限期地维护 MV2 相关的功能。事实上,近期 Google 发现了一些仅存在于 MV2 架构中的特定漏洞。

Cronin 在代码提交说明中写道:“kExtensionManifestV2Disabled 功能默认启用已超过一年。现在移除该功能以及实际上已废弃的代码。……任何依赖处于‘警告’阶段(即带有 kExtensionManifestV2Disabled 标志)进行测试的行为测试已被移除,因为这一阶段已不再可达。”

他进一步强调:“在任何受支持的 Chrome 版本中,MV2 扩展均不再被允许。我们将移除对其及相关功能的支持。由于复杂性和技术债务,以及其带来的安全风险,我们将无法无限期地提供/维护此功能(事实上,我们最近发现了一些专门针对 MV2 的漏洞)。当然,其他浏览器可以选择继续支持这些扩展。”

尽管 Chrome 不会立即彻底清除所有 MV2 代码,也不会将其置于编译标志之后,但许多相关功能最终将消失,且部分功能可能会比其他功能更快下线。这意味着,此前用于维持 uBlock Origin 等 MV2 扩展在 Chrome 上运行的“技巧”和“绕过手段”将不再有效,或仅能维持很短的时间。例如,Windows 注册表修改方案以延长 MV2 可用性的方法,将在 Chromium 151 版本后失效。

以下是 Chromium 最终支持 MV2 版本中的具体变更梳理:

  • Chromium 150:丢失了 ExtensionManifestV2Disabled 选项。
  • Chromium 151:将丢失 ExtensionManifestV2Unsupported 选项。
  • Chromium 151:将丢失 ExtensionManifestV2Availability 选项。
  • Chromium 151:很可能将丢失 AllowLegacyMV2Extensions 选项。

除了 Chrome,其他基于 Chromium 的浏览器如 Opera 和 Microsoft Edge 也可能紧随其后。虽然具体时间表未明确,但 Edge 早在今年二月就开始禁用 uBlock Origin。Opera 尽管在 2024 年 10 月曾承诺支持 MV2 更长时间,但也可能停止 MV2 插件的运行。

uBlock Origin 开发者 Raymond Hill (gorhill) 透露,Opera 曾通过邮件通知开发者其计划放弃基于 MV2 的扩展支持,这可能意味着 Opera 不再分配资源来审查此类扩展。Opera 官方发给开发者的邮件内容如下:

亲爱的开发者们:

此消息旨在告知您关于 Opera 扩展支持的重要即将发生的变更。

驱动 Opera 的 Chromium 正在完全移除对 Manifest Version 2 的支持。如果您的扩展当前使用 Manifest Version 2,至关重要的是您尽快将其更新为 Manifest Version 3,以确保持续的兼容性。

我们强烈建议采取行动将您的扩展更新为 Manifest Version 3,以避免服务中断并确保平稳过渡。

-- 此致, Opera 扩展团队

因此,目前似乎唯一完全支持 MV2 的 Chromium 浏览器是 Brave,Vivaldi 可能也在其列。如果用户希望彻底摆脱 Chromium 浏览器,Mozilla Firefox 是一个极佳的选择,因为它同时支持 MV3 和 MV2。

对于希望留在 Chrome 生态的用户,最简单的解决方案是切换到基于 MV3 的 uBlock Origin Lite。然而,根据实际体验,uBO Lite 的效果似乎不如原版非 Lite 版本。

关键要点

  • MV2 正式终结:Chrome 正在移除所有控制 MV2 可用性的功能标志,kExtensionManifestV2Disabled 已被彻底删除,标志着 MV2 在 Chrome 上的生命周期结束。
  • 移除原因:Google 表示,维护 MV2 的技术复杂性、技术债务以及发现的安全漏洞(特别是 MV2 特有的 bug)使得继续支持变得不可行。
  • 绕过手段失效:此前用于让 uBlock Origin 等 MV2 扩展在 Chrome 上运行的注册表修改等“绕过”技巧,将在 Chromium 151 版本后完全失效。
  • 其他浏览器跟进:Microsoft Edge 已开始行动,Opera 虽曾承诺延期但邮件显示其计划放弃 MV2 支持。目前 Brave 和 Vivaldi 仍提供 MV2 支持。
  • 替代方案
    • Firefox:唯一同时支持 MV2 和 MV3 的主流非 Chromium 浏览器。
    • uBlock Origin Lite:Chrome 用户的直接替代品,但基于 MV3,功能完整性和拦截效果可能不如原版。
    • Brave/Vivaldi:如果必须使用 Chromium 内核且需要 MV2 支持,这两者是目前的避风港。

意义与影响

这一事件标志着浏览器扩展生态的一个重大分水岭。Manifest V2 到 V3 的过渡不仅仅是技术架构的升级,更是一场关于浏览器控制权、广告拦截能力以及用户隐私保护的博弈。

对于普通用户而言,这意味着在 Chrome 上彻底告别曾经强大且灵活的 uBlock Origin 原版,转而接受功能受限的 MV3 版本或其他替代品。对于开发者来说,迁移至 MV3 已成为强制要求,必须重新设计扩展架构以适应新的 API 限制。

对于整个互联网生态,Chrome 作为市场份额最大的浏览器,其彻底关闭 MV2 大门将迫使 Opera、Edge 等竞争对手做出选择:是跟随 Google 的步伐以简化维护成本,还是坚持支持 MV2 以吸引特定用户群体(如隐私保护主义者)。目前看来,跟随是大势所趋,而 Firefox 和 Brave 等坚持 MV2 支持的浏览器可能会因此获得一部分忠实用户。

此外,这也凸显了单一浏览器内核(Chromium)主导市场所带来的生态垄断风险。当 Google 单方面决定技术标准的演进路径时,其他浏览器和开发者的选择空间被大幅压缩,用户的选择权也随之减少。

查看原文 →neowin.net