Populárne npm balíky napadol samostatne sa šíriaci malvér. Kradne heslá vývojárov a infikuje ďalšie projekty |
Pre bežných používateľov, ktorí ani npm nepoužívajú, to neznamená ohrozenie, ale firmy si musia dávať pozor.
Microsoft Threat Intelligence sleduje aktívny útok na softvérový dodávateľský reťazec, ktorý zasiahol populárne balíky v registri npm. Útočník získal prístup k dôveryhodným účtom správcov a použil ich na vydanie legitímne vyzerajúcich verzií obsahujúcich malvér Mini Shai-Hulud.
Medzi zasiahnutými balíkmi sa nachádzajú knižnice Keyv, Cacheable, Cache Manager či File Entry Cache, ktoré sú súčasťou veľkého množstva webových aplikácií a vývojárskych nástrojov. Niektoré z nich majú viac ako 100 miliónov stiahnutí týždenne, takže aj krátke obdobie dostupnosti škodlivých verzií mohlo zasiahnuť veľké množstvo projektov.
Útok sa začal 4. augusta 2026 kompromitovaním účtov a vydávacích procesov legitímnych projektov. Podľa bezpečnostných výskumníkov sa následne v priebehu niekoľkých hodín objavili stovky napadnutých balíkov a tisíce škodlivých verzií.
Malvér sa spustil už počas inštalácie
Škodlivé balíky obsahovali upravený skript preinstall, ktorý sa automaticky spustil ešte pred dokončením inštalácie balíka. Skript aktivoval zamaskovaný súbor setup.mjs, stiahol legitímne prostredie Bun z GitHubu a prostredníctvom neho spustil ďalšiu časť malvéru.
Použitie Bunu namiesto klasického Node.js malo pomôcť obísť bezpečnostné systémy zamerané predovšetkým na sledovanie procesov Node.js. Finálny škodlivý kód sa nachádzal v súboroch označených ako Math_Symbol.js alebo Math_Init.js.
Malvér následne prehľadával počítač a prostredie vývojára, pričom sa snažil získať:
- prihlasovacie údaje a tokeny npm,
- prístupové tokeny GitHubu,
- prihlasovacie údaje ku cloudovým službám,
- tajné kľúče uložené v CI/CD systémoch,
- údaje z vývojárskych nástrojov a automatizovaných buildov.
Zozbierané informácie odosielal útočníkom, ktorí ich mohli použiť na prístup k ďalším projektom a službám.
Ukradnutými účtami infikoval ďalšie balíky
Mini Shai-Hulud nie je iba klasický zlodej prihlasovacích údajov. Funguje aj ako červ schopný automaticky pokračovať v útoku.
Ak malvér našiel platný npm token s právom vydávať balíky, stiahol existujúci balík, vložil doň svoj škodlivý kód, zvýšil číslo verzie a prostredníctvom ukradnutého účtu ho opäť vydal. Takto sa infekcia presúvala medzi nesúvisiacimi projektmi bez toho, aby musel útočník každý balík napadnúť ručne.
Microsoft pozoroval rovnaký spôsob útoku pri všetkých zasiahnutých balíkoch. Podľa firmy to naznačuje, že za kampaňou stojí jeden útočník používajúci viacero ukradnutých prístupových tokenov.
Zasiahnuté boli mimoriadne populárne knižnice
Medzi potvrdenými škodlivými verziami sa nachádzajú:
- keyv@6.0.0
- flat-cache@6.1.24
- file-entry-cache@11.1.6
- cacheable-request@13.0.20
- cacheable@2.5.1
- cache-manager@7.2.10
- @cacheable/utils@2.5.1
- @cacheable/memory@2.2.1
- @cacheable/node-cache@3.1.2
- @cacheable/net@2.1.1
- ecto@5.0.1
- @qlik/api@2.14.2
Napadnutých bolo aj najmenej 17 balíkov pod menom ServiceTitan, vrátane knižníc určených na formuláre, tabuľky, dizajnové témy, logovanie a konfiguráciu nástroja ESLint.
Kompletný zoznam sa stále vyvíja. Viaceré bezpečnostné firmy hovoria o viac než 400 zasiahnutých balíkoch, pričom presný počet škodlivých verzií sa môže líšiť podľa toho, či sa počítajú samostatné balíky, jednotlivé verzie alebo automaticky znovu vydané kópie.
Legitímny podpis nezaručil bezpečný kód
Niektoré napadnuté balíky mali platné potvrdenie pôvodu a boli vydané prostredníctvom legitímnych GitHub Actions procesov. Automatizované systémy preto mohli balík vyhodnotiť ako dôveryhodný, pretože skutočne pochádzal z oficiálneho účtu a vydávacieho procesu projektu.
Útočník však kompromitoval samotný účet alebo zdrojový kód ešte pred spustením legitímneho procesu. Digitálne potvrdenie tak dokazovalo iba to, odkiaľ balík pochádza, nie to, že jeho obsah nebol pred vydaním úmyselne upravený.
Vývojári by mali skontrolovať závislosti a vymeniť prístupové údaje
Organizácie a vývojári by mali skontrolovať súbory package-lock.json, npm-shrinkwrap.json, yarn.lock alebo pnpm-lock.yaml a overiť, či sa v nich nenachádza niektorá zo škodlivých verzií.
Nestačí pritom iba odinštalovať napadnutý balík. Ak bol nainštalovaný na počítači alebo v CI/CD prostredí, je potrebné počítať s tým, že všetky dostupné prístupové údaje mohli byť odcudzené. Vývojári by mali z bezpečného zariadenia zneplatniť a vygenerovať nové npm a GitHub tokeny, cloudové kľúče, SSH kľúče a ďalšie tajné údaje používané automatizovanými procesmi.
Microsoft Defender identifikuje súvisiacu aktivitu napríklad ako Trojan:NPM/MalBun.A, Trojan:NPM/ShaiLoader.BY alebo Trojan:NPM/ShaiWorm.DAY!MTB. Microsoft zároveň odporúča preveriť upozornenia na podozrivé spúšťanie prostredia Bun a neštandardné procesy Node.js.
Útok opäť ukazuje slabinu moderného vývoja softvéru. Jedna kompromitovaná knižnica sa môže cez automatické aktualizácie a reťazce závislostí dostať do tisícov aplikácií skôr, než si vývojári všimnú, že dôveryhodná aktualizácia v skutočnosti priniesla malvér.
Výpis problematických balíkov nájdete napríklad tu.
| NAJČÍTANEJŠIE ČLÁNKY TÝŽDŇA |
- V Múmii 4 sa má vrátiť aj Arnold Vosloo ako Imhotep 30
- Múmia 4 potvrdila návrat Beniho a Ardetha Baya 31
- GTA VI prinesie rozšírenú ukážku na Netflix a to 27. augusta 122
- GTA VI má podľa Take-Two bezprecedentné predobjednávky 66
- Saudská skupina dokončila kúpu EA za 55 miliárd dolárov 48
- Return to Castle Wolfenstein je po 24 rokoch v Nemecku konečne dostupný bez cenzúr 14
- GTA VI ukážku budú môcť streameri okamžite preberať z Netflixu 90
- Ryan Hurst ukázal, ako vyzeral v úlohe Krata 25
- Sony tvrdí, že PS zostane lacnejšia ako herné PC aj po prechode na digitálne hry 201
- Zdražovanie PC komponentov pokračuje, výrobcovia zvyšujú ceny základných dosiek pr 70 zobraziť viac článkov >















