返回首页

GlassWorm:WakaTime 中的 Zig-dropper 感染 IDE

GlassWorm 活动已演变为在假 WakaTime 和 autoimport 扩展中使用 Zig-binaries。攻击感染机器上所有 VS Code 兼容 IDE,绕过 JS-sandbox。检测和清理建议。

GlassWorm Zig-attack:您的所有 IDE 均面临威胁
Advertisement 728x90

GlassWorm:原生Zig木马通过伪造WakaTime插件感染所有VS Code编辑器

一场新的GlassWorm攻击浪潮利用Open VSX上的假WakaTime扩展,部署原生Zig二进制文件。该代码绕过JavaScript沙箱,扫描系统,并将恶意软件植入机器上所有兼容VS Code的IDE——从VS Code本身到Cursor和Positron。

Aikido Security的研究人员发现了一个名为 code-wakatime-activity-tracker 的扩展,它模仿了正版WakaTime,但其 activate() 函数已被修改。该函数会下载 win.node(Windows)或 mac.node(macOS)二进制文件,触发完整的感染链。

初始加载机制

activate() 函数需加载原生附加组件:

Google AdInline article slot
const bw = process.platform === "win32" ? "./bin/win.node" : "./bin/mac.node";
const { install } = require(bw);
install();

这些二进制文件是Node.js原生附加组件(Windows为PE32+ DLL,macOS为x86_64/arm64 Mach-O),使用Zig语言编译。它们以操作系统级权限直接注入Node运行时,规避JavaScript沙箱检测。macOS版本中的调试符号指向 /Users/davidioasd/Downloads/vsx_installer_zig

随后,二进制文件枚举各类IDE路径:

  • Windows:%LOCALAPPDATA%\Programs\Microsoft VS Code\bin\code.cmd
  • %LOCALAPPDATA%\Programs\Cursor\resources\app\bin\cursor.cmd
  • 以及VS Code Insiders、Windsurf、VSCodium和Positron的类似路径。

在macOS上:/Applications/*.app 匹配相同编辑器。若存在多个IDE,全部会被入侵。

Google AdInline article slot

第二阶段:自动导入伪装

该二进制文件从GitHub Releases下载 .vsix 文件 floktokbok.autoimport(克隆自 steoates.autoimport,安装量超500万次)。每个IDE均通过命令行安装:

cmd.exe /d /e:ON /v:OFF /c "<ide_path> --install-extension <vsix_path>"

安装后,cleanupVsix() 函数清除痕迹。第二个载荷跳过俄语本地化版本,使用Solana区块链进行C2通信(地址从钱包交易中提取)。它窃取密钥信息,部署远程访问木马(RAT),并安装Chrome信息窃取工具用于获取Cookie和键盘记录。

攻击权衡:

Google AdInline article slot
  • 优点: 原生代码在开发者工具中不可见;基于Solana的C2可抵御域名封锁。
  • 缺点: 二进制哈希值在重建前保持不变;仅限于Windows和macOS平台。

GlassWorm的演变历程

该攻击活动自2025年3月起持续活跃,已从早期的Unicode编码npm包,演变为依托GitHub和VS Code市场。关键转变在于:采用基于Zig的附加组件替代JavaScript,要求对操作系统进行深度分析。已有数百个开源项目被成功入侵。

感染迹象(IoC)

扩展名:

  • specstudio.code-wakatime-activity-tracker
  • floktokbok.autoimport

SHA-256二进制文件:

  • win.node:2819ea44e22b9c47049e86894e544f3fd0de1d8afc7b545314bd3bc718bf2e02
  • mac.node:112d1b33dd9b0244525f51e59e6a79ac5ae452bf6e98c310e7b4fa7902e4db44

字符串特征: vsx_installer_zigdavidioasd

核心启示

  • 原生Zig附加组件可绕过JS分析——应重点监控扩展中的 .node.dll 文件。
  • 感染呈链式传播:一个被入侵的扩展可感染机器上所有VS Code分支。
  • 基于Solana的C2通信:域名封锁无效——必须实施区块链行为监控。
  • 跳过俄语本地化表明目标明确——若发现异常,立即轮换密钥。
  • 预防措施:验证发布者身份与安装数量;扫描EDR目录中的扩展文件。

清理步骤

  • 检查所有IDE(VS Code、Cursor等)中的扩展。
  • 移除可疑扩展;立即轮换SSH密钥、令牌(npm、GitHub PAT、AWS凭证)。
  • 清除Chrome中未知扩展并登出所有账户。
  • 实施扩展白名单策略,并对原生附加组件启用EDR防护。

— Editorial Team

Advertisement 728x90

继续阅读