你装浏览器插件时会多想一秒吗?广告拦截、翻译工具、视频下载器——这些"刚需型"扩展,装上就能用,用着还不错,顺手给个五星好评。但微软最近端掉的一个恶意扩展团伙,恰恰利用了这种"能用就行"的信任。119款插件在Edge商店里躺了至少三年,表面正常工作,暗地里从图片和字体文件里唤醒恶意代码,干着窃取凭证和广告欺诈的勾当。
微软把这个行动命名为StegoAd,是隐写术和广告软件的合成词。119款扩展全部指向同一个威胁行为者,最早活动可追溯到2021年。这些扩展的类别毫无攻击性:广告拦截器、虚拟专用网络、翻译工具、视频下载器。每款都履行了基本功能,积累了不少用户好评。恶意代码却一直保持休眠状态,直到扩展通过一系列规避检查后才被激活——正是这套机制让它年复一年地混迹在官方商店里。
119款扩展的累计安装量最高达到260万用户。微软特别强调这是上限数字,并非实际受害人数。多天的延迟激活、服务器端验证,加上部分变种设置了10%的执行概率门槛,意味着很多安装根本没有触发恶意载荷。到底有多少人真正被攻击,目前尚无确切数字。
这次攻击的命名来源于它的核心技术:隐写术,把可执行代码藏进看起来完全正常的文件里。最早的变种把JavaScript附加在PNG图标的IEND标记后面,图片在任何地方都能正常显示,静态扫描却从未标出异常。等检测能力跟上来,攻击者已经换成了WebP图片,接着又改用WOFF2字体文件,把代码藏在显示为亚洲文字或字体元数据的字形范围里。微软评价说,在浏览器扩展生态中,这种规模的隐写术应用相当罕见。
部分高影响变种甚至不把恶意载荷存在本地。它们从指令与控制服务器拉取一张看似普通的图片,扩展端经过大小写转换、数字替换、Base64和异或运算层层解码,再校验签名后才开始执行。如果请求没有通过指纹识别和用户代理检查,C2服务器只返回一个空的诱饵响应,研究人员直接探测什么都拿不到。扩展还会监控开发者工具是否打开,一旦发现有人在分析代码,就延长休眠时间。
用户能看到的破坏是广告层面的:注入广告、劫持亚马逊、eBay和全球速卖通的联盟佣金、重定向搜索结果,一边捞钱一边破坏浏览体验。但微软对已获取载荷的分析挖出了更多东西。载荷里包含了远程代码执行后门,能运行服务器推送的任意JavaScript指令。它们还窃取谷歌登录凭证和二次验证码、收割WordPress管理员登录信息,以及批量导出Cookie用于会话劫持。
微软发现七个谷歌分析追踪ID被当作隐蔽遥测通道使用,攻击者借谷歌自己的基础设施,近乎实时地监控整个行动的数据面板。基础设施的布局也匹配这样的野心:微软统计到超过十个C2域名并配置了自动故障切换机制。
热门跟贴