网络安全

保护您的数字足迹,抵御受信任扩展程序的隐藏风险

研究人员在拥有 1000 万安装量的 Chrome 广告拦截器中发现了一个休眠的脚本注入漏洞。了解如何保护您的浏览器免受这些威胁。
保护您的数字足迹,抵御受信任扩展程序的隐藏风险

我记得两年前曾为一家遭遇持续会话劫持事件的金融服务公司进行过一次取证审计。我们连续几天搜寻高级持续性威胁和复杂的恶意软件。最终,我们找到了罪魁祸首:一名初级分析师为了追踪伦敦气温而安装的天气小部件扩展程序。该扩展程序在三年内一直是合法的,直到新所有者引入了一次静默更新,开始抓取 Cookie 数据。这就是为什么 Island 的研究人员 Oleg Zaytsev 和 Shachar Gritzman 最近关于 Adblock for YouTube 扩展程序的发现让我感到如此熟悉。该扩展程序拥有超过 1000 万次安装,并在 Chrome 网上应用店中带有“精选”徽章。对于普通用户来说,它看起来是一个可靠的工具。然而,其底层架构却讲述了一个潜在被利用的不同故事。

Chrome 网上应用店徽章的脆弱信任

用户通常将 Chrome 网上应用店视为一个经过策划的避风港,认为谷歌会对每一行代码进行审查。“精选”徽章充当了数字认可印章,鼓励数百万人向第三方开发者授予广泛的权限。这个 ID 为 cmedhionkhpnakcndndgjdbohmhepckk 的扩展程序自 2014 年以来一直可用。它的功能正如广告所言,可以移除 YouTube 视频和外部嵌入内容中的广告。这种符合预期的行为为那些对普通观察者不可见的休眠功能提供了完美的掩护。

从风险角度来看,“精选”徽章的存在并不能保证长期安全。提交时的审查过程只是时间轴上的一个快照。它没有考虑到扩展程序在安装后如何与其命令与控制服务器进行通信。现代浏览器插件的架构允许动态配置更改,从而在不需要更新版本的情况下改变代码行为。这在商店审查的内容与用户在浏览器中实际运行的内容之间制造了鸿沟。

休眠远程执行路径的剖析

Island 的报告重点关注了一个名为 trusted-create-element 的特定脚本规则(scriptlet rule)。这是由扩展程序作者定义的一种定制机制。它允许扩展程序在用户访问的任何网页上创建新的脚本元素。在标准安全模型中,这相当于一名公用事业工人拿着大楼里每个房间的万能钥匙。这名工人本应只负责修理管道,但钥匙给了他们打开发现的任何保险箱的能力。

在分析时,此功能处于休眠状态。服务器端配置并未触发恶意脚本的注入。这是一种在数百万个浏览器中维持立足点的隐蔽方法。激活该功能只需要开发者服务器上的一个简单更改。不需要商店审查或扩展程序更新。用户看不到任何迹象表明该扩展程序突然能够读取他们的私人消息或窃取登录凭据。这种能力就像是放在抽屉里的一把装满子弹的枪。它虽然没有被发射,但危险始终存在。

为什么简单的 URL 检查无法保护用户

Adblock for YouTube 的开发者包含了一项检查,旨在将其活动限制在相关网站上。该扩展程序理应仅在 URL 包含 youtube.com 时激活其广告拦截功能。稳健的安全实现应该验证主机名或框架的来源,以确保代码仅在目标域上运行。而该扩展程序使用简单的字符串匹配,在 URL 的任何位置查找该字符序列。

这是一个根本性的架构失败。假设用户访问银行网站 bank.example.com。如果攻击者或恶意配置在该 URL 末尾附加一个查询参数,如 ?ref=youtube.com,扩展程序就会激活。由于路径中存在该字符串,检查通过。该扩展程序现在有权在银行门户网站上操作页面、注入脚本并读取敏感数据。对于任何理解基础 URL 结构的人来说,这种绕过是轻而易举的。它使针对特定网站的保护完全失效。

追踪广告注入历史与所有权变更

一款软件的血统与其当前代码同样重要。Adblock for YouTube 始于 2014 年的一个简单项目,但在 2018 年易主。这是扩展程序生态系统中的常见模式。小开发者将他们受欢迎的工具卖给寻求将庞大安装基础变现的公司。这些新所有者有时会引入激进的数据收集或广告注入 SDK,以回收投资成本。

Island 的研究人员发现,该扩展程序的早期版本使用了一个名为 Unistream SDK 的广告注入工具。开发者在 2024 年 6 月移除了该 SDK,但自 2025 年 2 月起就存在远程控制的脚本注入路径。这种尝试广告注入的历史表明,其优先级已从用户隐私转向了变现。该扩展程序还与 Google 此前因包含恶意软件而移除的其他几个广告拦截器有关联,如 Adblock for Chrome 和 Adblock Suite。当来自同一血统的多个产品都显示出恶意意图迹象时,风险级别就从理论转变为可能。

广泛扩展权限的系统性问题

广告拦截器需要广泛的权限才能运行。它们必须查看每个网络请求以拦截追踪器,并修改文档对象模型(DOM)以隐藏广告元素。这是一种任务关键级别的访问权限。大多数用户在点击“允许”时,并不会考虑浏览器插件拥有读取和更改所有网站上所有数据的权力意味着什么。这是现代网络安全的架构悖论:我们安装工具是为了提高隐私,但这些工具却要求我们交出浏览器会话的完全控制权。

从威胁格局来看,浏览器扩展程序是完美的特洛伊木马。它们位于浏览器的安全边界之内。它们绕过了传统的网络防火墙,因为它们的流量看起来像是来自受信任应用程序的标准 HTTPS 请求。如果扩展程序受到损害,攻击者就等同于用户。一旦在浏览器窗口中解密,他们就可以在工作应用中执行操作、访问管理面板并读取加密邮件。浏览器是现代工作者的主要操作系统,而扩展程序则是该系统中最脆弱的驱动程序。

审计浏览器安全的实际步骤

您应该将每个浏览器扩展程序视为一个潜在的漏洞。即使是拥有数百万用户的工具也可能被重新用于窃取数据。为了维护数据完整性,采取主动的扩展程序管理方法是必要的。您应该首先对浏览器中当前安装的每个插件进行细致审计。如果您在过去三十天内没有使用过某个扩展程序,应立即将其删除。每个安装的扩展程序都会增加您的受攻击面。

对于企业领导者来说,解决方案是最小权限原则。您应该使用组策略来管理整个组织的扩展程序。您可以创建一个经过技术审查的已批准扩展程序允许列表。您还应该考虑使用企业浏览器或安全层,以便实时检测未经授权的脚本注入。不要依赖 Chrome 网上应用店来做尽职调查。“精选”徽章只是一个起点,而不是最终结论。您必须验证您托付最敏感数据的软件的行为。

改善浏览器卫生的关键要点:

  1. 每月审计您的扩展程序,并移除不再需要的程序。
  2. 使用内置浏览器设置将扩展程序的访问权限限制在特定网站,而不是允许访问所有网站。
  3. 在安装前研究热门扩展程序的所有权历史。
  4. 监控浏览器是否出现意外重定向或搜索引擎行为的变化。
  5. 在企业环境中强制执行浏览器扩展程序允许列表,以防止影子 IT。

来源:Island Research Report by Oleg Zaytsev and Shachar Gritzman, Palo Alto Networks Unit 42, NIST Guide to Malware Incident Prevention and Handling (SP 800-83)。

免责声明:本文仅用于信息和教育目的,不能替代专业的网络安全审计或事件响应服务。

bg
bg
bg

另一边见

我们的端到端加密电子邮件和云存储解决方案提供了最强大的安全通信手段,确保您的数据安全和隐私。

/ 创建免费账户