polyfill.io
供应链攻击影响超 10 万网站,波及多个行业polyfill.io
是一个广受欢迎的 JavaScript 库,用于提升旧版浏览器的兼容性。近期安全研究人员发现,该服务已被恶意利用来注入恶意代码,影响超过 10 万个网站,包括 JSTOR、Intuit 和世界经济论坛等知名机构。今年 2 月,
polyfill.io
的域名和 GitHub 账号被一家名为 Funnull 的公司收购。此后,该服务开始在特定条件下向用户提供被植入恶意代码的脚本。攻击者通过
cdn.polyfill.io
向网站注入恶意 JavaScript 代码。这些代码具有复杂的特征,能够根据 HTTP 头动态生成有效载荷,仅在特定移动设备上激活,并采取多种措施逃避检测。受影响的网站可能会将访客重定向到博彩和色情网站。技术分析揭示了攻击的具体细节:
攻击触发条件为非 Mac 和 Windows 平台,且请求中包含 referer 信息。
- 恶意脚本会动态加载一个伪装成 Google Analytics 的文件
https://www.googie-anaiytics.com/gtags.js
。- 脚本会检查用户的设备类型、时间等因素,符合条件时将用户重定向到博彩网站
https://wweeza.com/redirect?from=bitget
。- 脚本还会检查页面是否包含常见的分析工具代码(如百度统计、Google Analytics 等)。
值得注意的是,脚本中使用了拼音参数,暗示此次供应链攻击的始作俑者可能是「说中文的人」。
为应对此次攻击,Google 已开始阻止使用受影响代码的网站投放 Google Ads。Cloudflare 和 Fastly 等公司则提供了安全的镜像服务作为替代方案。
安全专家强烈建议开发者立即检查并移除代码中对
polyfill.io
的任何引用。同时,建议采用内容安全策略(CSP)和子资源完整性(SRI)等技术来增强网站安全性。(综合多个来源)
——————
polyfill.io
供应链攻击事件时间线2024年2月:
-
polyfill.io
域名被一家名为 Funnull 的中国公司收购。- 项目原作者 Andrew Betts 发出警告,建议网站立即停止使用
polyfill.io
。2024年2月底:
- Cloudflare 和 Fastly 创建
polyfill.io
的安全镜像,为用户提供替代选择。2024年6月25日:
- 安全公司 Sansec 披露
polyfill.io
正被用于大规模供应链攻击,影响超过10万个网站。- 恶意代码被发现通过
cdn.polyfill.io
注入到使用该服务的网站中。2024年6月26日:
- Google 开始阻止使用受影响代码的网站投放 Google Ads,并向广告主发出警告。
- Cloudflare 发布自动 JavaScript URL 重写服务,将
polyfill.io
链接替换为安全镜像。- 多家安全公司呼吁开发者立即移除对
polyfill.io
的引用。2024年6月27日:
- Namecheap 域名注册商暂停了
polyfill.io
域名。- Polyfill 服务在新域名
polyfill.com
上重新上线,声称遭到「恶意诽谤」。