EN CZ DE PL HU SK

Kompromitovaná verze balíčku jscrambler 8.14.0 na npm spouští při instalaci Rust infostealer

Balíček jscrambler na registru npm byl kompromitován a už samotná instalace jeho verze 8.14.0 spustí na počítači zloděje informací (infostealer). Škodlivé vydání zveřejněné 11. července 2026 obsahovalo preinstall hook, který nasadil a spustil nativní binárku — zvlášť sestavenou pro Windows, macOS i Linux.

Firma Socket vydání označila šest minut po jeho zveřejnění. Pokud jej vy nebo některý z vašich sestavovacích systémů v tomto okně stáhli, payload už proběhl s tím oprávněním, jaké měl váš instalační proces. V předchozím vydání 8.13.0 nic z toho není. Rozdíl v balíčku ukazuje dva nové soubory ve složce dist/: setup.js jako drobný zavaděč a intro.js, který navzdory názvu není JavaScript, nýbrž kontejner o velikosti zhruba 7,8 MB obsahující tři gzipem komprimované nativní binárky. Při instalaci setup.js vybere binárku pro daný operační systém, zapíše ji pod náhodným názvem do dočasného adresáře, označí ji jako spustitelnou a spustí odděleně se skrytým výstupem.

Co payload krade a jak přetrvává

Přidané soubory jsou ve zveřejněném balíčku, ale nikde ve veřejném zdrojovém kódu jscrambleru. Analytici z firem StepSecurity i SafeDep shodně uvádějí, že pro verzi 8.14.0 v repozitáři na GitHubu neexistuje odpovídající commit, tag ani pull request; nejnovějším tagem zůstává 8.13.0. Verze byla vložena přímo na npm pod legitimním účtem správce, což naznačuje kompromitovaný účet nebo sestavovací pipeline.

Payloadem je Rust infostealer, který na vývojářském stroji hledá tajemství a odesílá je přes TLS na sběrný server. Cílový seznam je široký a míří na vývojáře: cloudové přihlašovací údaje k AWS, Azure a Google Cloud včetně metadatových endpointů CI runnerů; kryptopeněženky a seed fráze z MetaMasku, Phantomu a Exodu; trezor správce hesel Bitwarden; hesla a cookies uložené v prohlížeči; relace služeb Discord, Slack, Telegram a Steam. Nově se zaměřuje také na konfigurační soubory AI nástrojů pro kódování, včetně Claude Desktop, Cursoru, Windsurfu, VS Code a Zedu, kde bývají API klíče a přihlašovací údaje k serverům MCP.

Binárky nejen kradou. Na Linuxu se payload propojí s knihovnou BPF v jádře a umí z paměti nahrát eBPF program přímo do jádra. Verze pro Windows a macOS přidávají kontroly proti ladění (anti-debugging) a zajišťují si přetrvání po restartu — skrytou naplánovanou úlohou spouštěnou každou minutu ve Windows a agentem LaunchAgent na macOS. Balíček má týdně kolem 15 800 stažení; kolik z nich připadá na kompromitovanou verzi, zatím není známo.

Načasování je pikantní: npm právě proti této cestě zakročil. Verze npm 12 vyšla 8. července, tři dny před tímto vydáním, a instalační skripty závislostí v ní jsou ve výchozím stavu vypnuté. Na npm 12 se tedy takový preinstall hook nespustí bez schválení, starší klienti jej však stále spouštějí automaticky.

Jak reagovat

Doporučuje se opustit verzi 8.14.0, přejít na čistou verzi (viz níže) a vymazat jscrambler@8.14.0 ze zámkových souborů (lockfiles) i mezipamětí. Dále ověřit, zda jste 8.14.0 instalovali — kontrolou lockfiles, logů správce balíčků a záznamů CI od 11. července. Pokud verze na stroji proběhla, je třeba považovat každé dosažitelné tajemství za odcizené: rotovat cloudové klíče, tokeny npm a GitHubu i API klíče AI nástrojů a MCP, zneplatnit relace a přesunout kryptoměny z peněženek na daném hostiteli.

Aktualizace: Jscrambler potvrdil, že útočník použil k publikaci kompromitované přihlašovací údaje pro npm. Socket dnes spojuje se stejným aktérem pět škodlivých verzí (8.14.0, 8.16.0, 8.17.0, 8.18.0 a 8.20.0), vydaných v průběhu zhruba tří hodin. U pozdějších verzí se způsob doručení změnil — dropper se přesunul do hlavního kódu a CLI, takže se spustí i při importu či běhu balíčku a přepínač npm install –ignore-scripts jej nezastaví. Jako čisté vydání, na které je vhodné přejít, obě firmy uvádějí 8.22.0.

Zdroj: thehackernews.com

Zdroj: IT SECURITY NETWORK NEWS  

Napsat komentář