Mini červ Shai-Hulud
Hroziteľ známy ako TeamPCP bol zapojený do sofistikovanej útočnej kampane v dodávateľskom reťazci zameranej na široko používané balíky npm a PyPI spojené s TanStack, UiPath, Mistral AI, OpenSearch, Guardrails AI a niekoľkými ďalšími ekosystémami. Táto operácia, spojená s vyvíjajúcou sa kampaňou malvéru Mini Shai-Hulud, demonštruje výraznú eskaláciu zneužívania softvéru v dodávateľskom reťazci a techník kompromitácie založených na identite.
Výskumníci zistili, že škodlivé balíky npm boli upravené tak, aby obsahovali obfuskovaný komponent JavaScript s názvom router_init.js. Toto užitočné zaťaženie profiluje infikované prostredia a nasadzuje pokročilý nástroj na krádež poverení zameraný na poskytovateľov cloudových služieb, kryptomenové peňaženky, nástroje na vývoj umelej inteligencie, platformy na zasielanie správ, systémy CI/CD a prostredia GitHub Actions. Ukradnuté údaje sa primárne prenášajú do domény filev2.getsession.org.
Použitie infraštruktúry Session Protocol zdôrazňuje úmyselný pokus o obídenie bezpečnostných kontrol podniku. Keďže doména patrí k decentralizovanej platforme pre zasielanie správ zameranej na súkromie, je menej pravdepodobné, že ju zablokujú tradičné sieťové obrany. Ako sekundárna metóda úniku sa šifrované údaje odosielajú do úložísk kontrolovaných útočníkom prostredníctvom rozhrania GitHub GraphQL API s použitím ukradnutých autentifikačných tokenov GitHub pod identitou autora claude@users.noreply.github.com.
Obsah
Mechanizmy perzistencie a rozšírenie krádeže poverení
Malvér zavádza niekoľko funkcií perzistencie a sledovania určených na udržanie dlhodobého prístupu k napadnutým vývojovým prostrediam. V kóde Claude Code a Microsoft Visual Studio Code sú vytvorené hooky na perzistenciu, čo umožňuje malvéru prežiť reštartovanie systému a automaticky sa reštartovať pri každom otvorení IDE.
Okrem toho je nasadená služba gh-token-monitor na nepretržité monitorovanie a opätovné získavanie tokenov GitHub. Do napadnutých repozitárov sú tiež vložené dva škodlivé pracovné postupy akcií GitHub. Tieto pracovné postupy serializujú tajné údaje repozitára do formátu JSON a nahrávajú dáta do externého koncového bodu api.masscan.cloud.
Najnovší kompromitujúci útok TanStack sa výrazne líši od predchádzajúcich incidentov v dodávateľskom reťazci. Namiesto spoliehania sa na predinštalačný hook útočníci vložili škodlivý súbor JavaScript priamo do tarballov balíkov a zároveň zaviedli voliteľnú závislosť prepojenú s balíkom hostovaným na GitHube. Táto závislosť obsahuje hook životného cyklu prípravy, ktorý spúšťa užitočné zaťaženie prostredníctvom behového prostredia Bun.
Balíky Mistral AI napadnuté trójskym koňom prijali staršiu stratégiu infikovania úpravou súboru package.json pomocou predinštalačného hooku, ktorý spustí uzol setup.mjs. Tento proces stiahne Bun a spustí rovnaký malvér kradnúci prihlasovacie údaje.
CVE-2026-45321 a zneužívanie dôveryhodného publikovania
Kompromitácia TanStack bola oficiálne sledovaná ako CVE-2026-45321 a bolo jej pridelené kritické skóre CVSS 9,6. Vyšetrovatelia potvrdili, že napadnutých bolo 42 balíkov a 84 verzií v ekosystéme TanStack.
Analýza odhalila, že kompromitácia pochádza z reťazeného útoku GitHub Actions, ktorý využíval spúšťač pull_request_target, otravu vyrovnávacej pamäte GitHub Actions a extrakciu OIDC tokenov z runnerov GitHub Actions počas behu. Útočníci údajne pripravovali škodlivé užitočné dáta prostredníctvom osirelých commitov vo forkoch GitHub a potom ich vkladali do tarballov balíkov npm. Útočníci potom zneužili legitímne pracovné postupy TanStack/router, aby publikovali kompromitované balíky s platnými potvrdeniami pôvodu SLSA.
Tento vývoj predstavuje historickú eskaláciu útokov v dodávateľskom reťazci softvéru. Škodlivé balíky obsahovali platné signatúry pôvodu SLSA Build Level 3, čím sa stal prvým zdokumentovaným červom npm schopným distribuovať škodlivé balíky s autentickými atestáciami zostavení. Kampaň škodlivého softvéru sa následne rozšírila za hranice TanStacku a rozšírila sa do ekosystémov spravovaných spoločnosťami UiPath, DraftLab a ďalšími vývojármi.
Táto operácia výrazne zneužíva dôveryhodné publikačné pracovné postupy. Namiesto priameho krádeže poverení npm, kód ovládaný útočníkom bežiaci v rámci dôveryhodných kanálov CI/CD využíval povolenia OIDC na vytváranie krátkodobých publikačných tokenov počas procesu zostavovania. To umožnilo publikovanie škodlivých balíkov prostredníctvom legitímnych kanálov vydania a zároveň obchádzanie konvenčných overovacích ochranných opatrení.
Samovoľne sa rozmnožujúce správanie červov vyvoláva poplach
Jedným z najnebezpečnejších aspektov kampane Mini Shai-Hulud je jej model šírenia podobný červom. Malvér aktívne vyhľadáva publikovateľné npm tokeny nakonfigurované s bypass_2fa=true, vymenúva balíčky spravované napadnutým vývojárom a vymieňa tokeny GitHub OIDC za publikačné tokeny pre jednotlivé balíčky. Tento mechanizmus umožňuje malvéru šíriť sa laterálne naprieč ekosystémami balíčkov bez toho, aby sa spoliehal na tradičné techniky krádeže poverení.
Útok tiež zneužil konfigurácie dôveryhodnosti na úrovni repozitára v rámci modelu dôveryhodných vydavateľov OIDC platformy GitHub. Keďže dôvera bola udeľovaná všeobecne na úrovni repozitára namiesto toho, aby bola obmedzená na chránené vetvy a konkrétne súbory pracovného postupu, škodlivé spustenia pracovného postupu spúšťané osirelými commitmi mohli vyžiadať legitímne tokeny npm publish.
Ďalšou znepokojujúcou funkciou je nasadenie „prepínača mŕtveho muža“. Malvér nainštaluje shell skript, ktorý opakovane každých 60 sekúnd oslovuje koncový bod api.github.com/user, aby zistil, či útočníkom vytvorené npm tokeny zostávajú aktívne. Tieto tokeny majú hrozivý popis IfYouRevokeThisTokenItWillWipeTheComputerOfTheOwner.
Ak obrancovia zrušia token prostredníctvom ovládacieho panela npm, malvér spustí deštruktívnu rutinu vykonaním príkazu rm -rf ~/, čím efektívne premení infekciu na malvér typu wiper. Toto agresívne správanie naznačuje podstatný vývoj v operačných taktikách TeamPCP a demonštruje rastúcu sofistikovanosť metód donucovania a perzistencie. Bezpečnostným tímom sa preto odporúča, aby pred zrušením kompromitovaných prihlasovacích údajov npm izolovali a vytvorili obraz infikovaných systémov.
Dotknuté balíky a rozširujúci sa vplyv na ekosystém
Kampaň ovplyvnila viac ako 170 balíkov v npm aj PyPI, čo spolu predstavuje viac ako 518 miliónov stiahnutí. Vyšetrovatelia tiež identifikovali najmenej 400 repozitárov vytvorených pomocou ukradnutých prihlasovacích údajov, pričom všetky obsahovali frázu „Shai-Hulud: Here We Go Again“.
Dotknuté balíky zahŕňajú:
guardrails-ai@0.10.1 (PyPI)
mistralai@2.4.6 (PyPI)
@opensearch-project/opensearch@3.5.3, 3.6.2, 3.7.0, 3.8.0
@squawk/mcp@0.9.5
@squawk/počasie@0.5.10
@squawk/plán letu@0.5.6
@tallyui/connector-medusa@1.0.1, 1.0.2, 1.0.3
@tallyui/connector-vendure@1.0.1, 1.0.2, 1.0.3
Malvér tiež využíva viacero redundantných kanálov na únik údajov. Okrem infraštruktúry Session Protocol a slepých úložísk GitHub sa ukradnuté prihlasovacie údaje prenášajú aj cez doménu s preklepom git-tanstack.com.
Malvér PyPI predstavuje geofencovanú deštruktívnu logiku
Varianty malvéru založené na jazyku Python spojené so škodlivými balíkmi Mistral AI a Guardrails AI sa podstatne líšia od dát JavaScript distribuovaných prostredníctvom npm. Napadnutý balík mistralai PyPI sťahuje zo vzdialeného hostiteľa 83.142.209.194 program na krádež prihlasovacích údajov.
Výskumníci zistili, že malvér v jazyku Python obsahuje logiku rozlišujúcu medzi jednotlivými krajinami, ktorá je navrhnutá tak, aby sa zabránilo spusteniu v ruskojazyčných prostrediach. Obsahuje tiež geofencovaný deštruktívny mechanizmus, ktorý zavádza pravdepodobnosť spustenia príkazu rm -rf / s hodnotou jedna ku šiestim, ak sa infikovaný systém nachádza v Izraeli alebo Iráne.
Toto správanie demonštruje znepokojujúci vývoj smerom k nasadeniu deštruktívneho užitočného zaťaženia s open-source uvedomením si regiónov v ekosystémoch balíkov.
Rastúca hrozba útokov na dodávateľský reťazec zameraných na identitu
Kampaň Mini Shai-Hulud odráža širšiu transformáciu v moderných útokoch v dodávateľskom reťazci. Namiesto toho, aby sa útočníci zameriavali výlučne na kompromitáciu balíkov, čoraz viac sa zameriavajú na dôveryhodné identity CI/CD, publikačné pracovné postupy a cloudové automatizované kanály.
Keď útočníci získajú prístup k infraštruktúre na publikovanie softvéru, samotný vývojový kanál sa stáva mechanizmom distribúcie malvéru. Keďže mnohé škodlivé akcie sa dejú prostredníctvom legitímnych pracovných postupov, dôveryhodných atestácií a systémov autentického vydávania, tradičné bezpečnostné kontroly nemusia identifikovať škodlivé správanie.
Medzi kľúčové charakteristiky definujúce túto novú generáciu útokov na dodávateľský reťazec patria:
- Zneužívanie dôveryhodného publikovania a mechanizmov výmeny tokenov OIDC
- Šírenie prostredníctvom legitímnych pracovných postupov CI/CD a systémov zostavovania
- Použitie platných atestácií SLSA na maskovanie škodlivých balíkov
- Viackanálové operácie exfiltrácie a perzistencie poverení
- Deštruktívne odvetné mechanizmy určené na zastrašovanie obrancov
Rozšírenie kampane na nástroje umelej inteligencie, podnikovú automatizáciu, vyhľadávaciu infraštruktúru, vývoj frontendu, nástroje súvisiace s letectvom a ekosystémy CI/CD demonštruje, ako hlboko sú prepojené dodávateľské reťazce softvéru. Monitorovanie správania počas inštalácie balíkov a vykonávania zostavenia je teraz čoraz dôležitejšie na odhaľovanie hrozieb, ktoré sa na prvý pohľad zdajú byť legitímne.