恶意广告活动利用JavaScript在浏览器内存中组装恶意软件

BleepingComputer报道:恶意广告活动利用伪造Solana、Luno、TradingView网站,通过JavaScript在浏览器内存中组装恶意软件,绕过静态检测。攻击目标为加密货币投资者,使用Service Worker和SharedWorker技术,自2024年底活跃于亚太和拉美地区。了解攻击链、IOCs及缓解措施。

🔍 High 其他

一场大规模恶意广告活动通过伪造Solana、Luno和TradingView等金融投资网站,利用恶意JavaScript劫持浏览器作为本地组装流水线,在内存中逐步构建恶意可执行文件。该活动自2024年底活跃,主要针对亚太和拉丁美洲的加密货币投资者及零售交易者,使用Service Worker和SharedWorker技术绕过传统检测。

来源:BleepingComputer | Sat, 25 Ju | 原文链接

🔍 关键发现

  • 攻击者通过ReactJS注册Service Worker和SharedWorker,在浏览器端分阶段下载恶意载荷组件并本地组装,避免传输完整文件绕过静态检测。
  • 每个会话使用随机化的种子和大小参数生成唯一哈希,使得最终恶意文件哈希值动态变化,对抗签名检测。
  • 恶意载荷基于干净的Bun可执行文件构建,具备代理劫持流量、窃取密码/Cookie、键盘记录、截屏、窃取加密货币钱包数据及持久化能力。

⚔️ 攻击链分析

1. 受害者点击恶意广告跳转到虚假投资网站(如TradingView伪造页面);2. 页面注册Service Worker作为下载管理器,并创建SharedWorker作为组装引擎;3. SharedWorker请求/config端点获取模板和随机参数,然后分步获取远程组件并与本地生成的字节组装成完整恶意可执行文件;4. Service Worker触发同源下载路径,用户浏览器将组装好的恶意文件下载到本地。

🚩 失陷指标 (IOC)

  • 未公开具体IOC,但可关注伪造域名如solana-xxx.com、luno-xxx.com、tradingview-xxx.com等
  • 恶意JavaScript中使用的Service Worker注册路径含/config参数,seed和size参数随机化

🛡️ 缓解建议

  • ✅ 避免从社交媒体广告或赞助搜索结果中下载金融或加密货币应用,始终从公司官方网站获取安装程序。
  • ✅ 在运行可执行文件前,验证其数字签名和发布者信息,确保来自受信任的来源。
  • ✅ 部署端点检测与响应(EDR)工具,监控浏览器内存中的异常进程创建和Service Worker活动。

涉及漏洞:[]


⚠️ 本文仅供安全研究与学习,IOC 信息请勿用于非法目的。

🤖 常见问题解答(FAQ)

❓ 该攻击如何绕过传统文件扫描?

攻击不在网络传输完整恶意文件,而是通过分步获取组件在浏览器内存中动态组装,最终只触发浏览器同源下载,静态扫描和网络流量检测难以发现完整载荷。

❓ 攻击者为什么选用Bun可执行文件?

Bun是一个快速JavaScript运行时,攻击者从干净版本开始,通过组装技术注入恶意代码,使得最终文件在结构上类似合法Bun,增加白名单绕过概率。

❓ 防御方如何检测此类攻击?

监控浏览器是否注册了不寻常的Service Worker,尤其是来自金融类网站;检查页面中SharedWorker发起的/config请求及后续分块下载模式;分析内存中是否存在异常进程生成。

[!] CONTACT_CHANNELS

如需商务合作、技术咨询或漏洞反馈,请通过以下离岸节点联系作者。

> PING_AUTHOR (@A1RedTeam)