找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

601

积分

0

好友

79

主题
发表于 12 小时前 | 查看: 0| 回复: 0

你安装了多少个浏览器扩展?说真的,你可能想不到,有些用了好几年、评分还特别高的工具,可能会在某一次更新后悄然变身成数据采集器

界面没变,功能照旧,但它开始偷偷收集你的浏览记录会话信息,甚至盯上你在会议平台里打开过的敏感内容。

DarkSpectre间谍活动利用浏览器扩展的新闻报道截图

最近一份来自安全公司的调查报告揭示了一起令人震惊的事件。一个代号为 DarkSpectre 的网络间谍活动,被曝通过近 300 个 看起来正常甚至颇为实用的浏览器扩展,覆盖 Chrome、Edge、Firefox,长期潜伏,累计感染了超过 880 万用户,潜伏时间最长竟达 7 年

最危险之处在于,这些扩展伪装得极其巧妙。它们往往是便捷下载器、翻译工具、截图软件、会议助手这类用户日常高频使用的工具型插件。

此次攻击并非单一手段,而是三条战线并行推进:长期潜伏投毒、PNG隐写投递、企业会议数据窃取。其手法之隐蔽,令人防不胜防。

DarkSpectre攻击活动流程图

战线一:长期潜伏与供应链更新投毒

这是规模最大、最典型的一条攻击路径。报告指出,它涉及 100 多个扩展,影响了大约 560 万 用户。

攻击路径非常清晰:

  1. 初始阶段:提供真实功能。扩展上架时先提供真实可用的功能,最常见的就是翻译、截图、清理加速这类工具。
  2. 潜伏期:建立信任。这些扩展因实用而获得广泛安装,随后会长期(通常持续 3 到 5 年)保持“正常”状态,积累高评分和良好口碑,有的甚至获得了应用商店的 Featured/Verified 等信任背书。部分扩展潜伏超过5年才露出獠牙。
  3. 激活阶段:静默更新。真正的转变发生在一场静默更新中。所有用户被自动更新为具备数据采集与外传能力的新版本。报告显示,部分扩展采用了延迟触发机制,在更新后的 第 3 天 才启用恶意逻辑,以规避安全软件的短期动态检测。
  4. 持久化与数据外传:恶意版本演化成一个 extension-context RCE 框架,支持远程下发并执行任意 JavaScript。典型攻击链是扩展在后台按固定节奏(如每小时一次)轮询 C2 服务器,从类似 api.extensionplay[.]com 的域名拉取恶意载荷并在扩展上下文中执行。

外传的数据采用固定结构,通常包含访问的 URL、引用来源、时间戳、持久化的 UUID,以及设备指纹信息(如 UA、语言、时区、屏幕分辨率等)。数据打包后常使用 AES 加密,并发送至类似 api.cleanmasters[.]store 的接收端点。

更值得警惕的是扩展 Service Worker 的能力边界。研究人员认为其具备向 中间人攻击 演进的潜力,可对页面脚本加载链路进行拦截和篡改,覆盖凭证窃取、会话劫持、任意代码注入等更深层次的风险。

最后是持久化追踪。扩展会将持久化 UUID 写入 chrome.storage.sync,当用户在多个设备间同步浏览器数据时,该标识符会跟随转移。即使用户重装浏览器,也难以彻底切断其身份与行为轨迹的关联。

战线二:PNG隐写投递与多阶段加载

这条攻击线精准地利用了应用商店审核机制的薄弱环节。主要针对 Firefox 与 Opera 生态,整体影响约 105 万 用户,其中一个 Opera 扩展的安装量接近 100 万

其核心手法是将第一段恶意代码藏在了一个几乎没人会仔细审查的地方:扩展的图标 PNG 文件中。

利用PNG隐写技术的恶意代码片段

扩展启动时,会读取自己的 logo.png 文件,然后在 PNG 文件的原始字节数据中寻找特定标记,将追加在图片数据末尾的内容作为 JavaScript 代码执行。

对于静态安全审计而言,这一步非常棘手,因为扫描扩展的脚本文件时,可能根本找不到真正的恶意载荷。

从图标中解析出来的代码并非最终的有效载荷,而只是一个加载器。这个加载器会回连到指定域名(C2服务器)拉取下一阶段的内容。但它故意将行为做得极不稳定:两次回连之间会设置 48 小时 的长时间间隔,而且即使到了回连时间,成功拉取到下一阶段载荷的概率也只有 10%。这种设计旨在绕过动态行为分析。

真正的最终载荷负责实现恶意功能与扩展控制。公开披露的能力包括劫持电商联盟链接、向页面注入追踪代码。更关键的是,它会主动移除 HTTP 响应中的安全头部,比如 Content-Security-PolicyX-Frame-Options,这相当于拆除了浏览器的一大块防护网。随后,攻击者会配合隐藏的 iframe 注入,将用户流量导向其控制的地址,用于广告欺诈、点击欺诈,并实施进一步追踪。

这条攻击线的精髓不在于某一项技巧有多新颖,而在于其分层的策略叠加。图标隐写让静态审查漏掉初始代码;分阶段拉取让恶意代码只在运行时出现;延迟与概率触发则让动态分析很难稳定复现攻击行为。

战线三:企业会议数据定向窃取

18 个 伪装成企业会议助手的扩展,覆盖 Chrome、Edge、Firefox,影响规模最高约 220 万 用户。

它的切入点是权限。扩展会一次性申请覆盖 28 个以上 会议与协作平台相关站点的 host_permissions。当用户打开 Zoom、Google Meet 等会议页面时,扩展注入的 content script 会直接从页面 DOM 中抽取结构化数据。

窃取会议数据的代码结构示例

典型窃取的数据包括:会议 URL、内嵌的参会密码、会议 ID、会议主题与描述、时间安排、用户的报名或加入状态。某些扩展还会抓取参与者列表等相关信息。

数据外传做得非常直接高效。它使用 WebSocket 保持与 C2 服务器的实时连接,将采集到的会议信息持续推送到远端,并写入 Firebase 等云端数据库,最终形成可供检索的情报数据集。

这条攻击线的核心目标就是信息收集。会议链接和密码本质上就是会议的入口凭证,再叠加会议主题、时间、参会者画像等信息,攻击者很容易还原出目标团队正在进行的项目、合作对象以及关键项目节点的推进情况,这是典型的企业情报窃取。

如何防范恶意浏览器扩展?

这起大规模浏览器扩展攻击事件最令人担忧的一点,在于它彻底利用了我们对常用工具的长期信任。先用实用功能积累口碑和用户量,再通过一次看似普通的更新悄悄植入数据窃取能力。

很多时候扩展的界面和功能都没有变化,异常完全隐藏在后台网络通信中,普通用户极难察觉信息正在泄漏。

DarkSpectre各攻击活动数据对比表

浏览器扩展本质上是拥有高权限且常驻运行的代码,我们该如何尽量避开这类恶意扩展呢?以下是一些实用建议:

  1. 只安装刚需扩展。对于翻译、截图这类高频工具可以保留,低频或“锦上添花”类的扩展尽量删除。安装的扩展越多,潜在的攻击面就越大。
  2. 遵循权限最小化原则。能设置为“点击时运行”的扩展,就不要授予其“在所有网站上运行”的常驻权限。能只授权给特定几个站点的,就不要授权“:///*”这样的全部站点权限。
  3. 对扩展更新保持敏感。如果某个扩展在更新后突然要求更多不相干的权限、新增了与核心功能无关的特性、或开始频繁跳转广告,应优先将其卸载并进行排查。
  4. 定期为扩展“做体检”。定期检查已安装的扩展列表。可以先禁用那些长期不使用的扩展,然后重点审查权限范围过大的扩展,最后决定是保留还是彻底移除。

这起事件再次警示我们,即便在官方应用商店,扩展生态的安全审核也并非铜墙铁壁。作为用户,保持警惕和良好的安全习惯至关重要。如果你对网络攻防与安全技术有更深的兴趣,可以关注云栈社区中相关技术板块的讨论。




上一篇:Go语言testify断言库安装与使用指南:告别繁琐的if判断
下一篇:Kaggle NFL球员轨迹预测竞赛优胜方案解读:Transformer、RNN与数据挖掘实战
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-1-24 19:00 , Processed in 0.239695 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表