Mini Shai-Hulud kirminas
Grėsmės veikėjas, žinomas kaip „TeamPCP“, buvo susijęs su sudėtinga tiekimo grandinės atakų kampanija, nukreipta prieš plačiai naudojamus „npm“ ir „PyPI“ paketus, susijusius su „TanStack“, „UiPath“, „Mistral AI“, „OpenSearch“, „Guardrails AI“ ir keliomis kitomis ekosistemomis. Ši operacija, susijusi su besivystančia „Mini Shai-Hulud“ kenkėjiškų programų kampanija, rodo reikšmingą programinės įrangos tiekimo grandinės piktnaudžiavimo ir tapatybės pagrindu veikiančių kompromitavimo metodų eskalaciją.
Tyrėjai nustatė, kad kenkėjiški „npm“ paketai buvo modifikuoti, įtraukiant užmaskuotą „JavaScript“ komponentą pavadinimu „router_init.js“. Šis paketas profiliuoja užkrėstas aplinkas ir diegia pažangų kredencialų vagystės įrankį, kuris taikosi į debesijos paslaugų teikėjus, kriptovaliutų pinigines, dirbtinio intelekto kūrimo įrankius, pranešimų platformas, CI/CD sistemas ir „GitHub Actions“ aplinkas. Išfiltruoti duomenys pirmiausia perduodami į domeną filev2.getsession.org.
Sesijos protokolo infrastruktūros naudojimas rodo sąmoningą bandymą apeiti įmonės saugumo kontrolę. Kadangi domenas priklauso decentralizuotai, į privatumą orientuotai pranešimų platformai, mažesnė tikimybė, kad jį blokuos tradicinės tinklo apsaugos priemonės. Kaip antrinis išfiltracijos metodas, užšifruoti duomenys perduodami užpuoliko kontroliuojamoms saugykloms per „GitHub GraphQL API“, naudojant pavogtus „GitHub“ autentifikavimo žetonus, kurių autoriaus tapatybė yra claude@users.noreply.github.com.
Turinys
Išlikimo mechanizmai ir įgaliojimų vagystės išplėtimas
Kenkėjiška programa įdiegia keletą atkūrimo ir stebėjimo funkcijų, skirtų ilgalaikei prieigai prie pažeistų kūrimo aplinkų palaikyti. „Claude Code“ ir „Microsoft Visual Studio Code“ yra sukurti atkūrimo kabliai, leidžiantys kenkėjiškai programai išgyventi sistemos perkrovimą ir automatiškai paleisti iš naujo kiekvieną kartą atidarant IDE.
Be to, įdiegta „gh-token-monitor“ paslauga, skirta nuolat stebėti ir pakartotinai išfiltruoti „GitHub“ žetonus. Į pažeistas saugyklas taip pat įterpiami du kenkėjiški „GitHub Actions“ darbo srautai. Šie darbo srautai serializuoja saugyklų paslaptis į JSON formatą ir įkelia duomenis į išorinį galinį tašką api.masscan.cloud.
Naujausias „TanStack“ kompromitavimas gerokai skiriasi nuo ankstesnių tiekimo grandinės incidentų. Užuot pasikliovę išankstinio diegimo priemone, užpuolikai į paketų archyvus įterpė kenkėjišką „JavaScript“ failą ir kartu įtraukė pasirenkamą priklausomybę, susietą su „GitHub“ talpinamu paketu. Šioje priklausomybėje yra paruošimo gyvavimo ciklo prievadas, kuris vykdo naudingąją apkrovą per „Bun“ vykdymo aplinką.
Trojos arkliu užkrėsti „Mistral AI“ paketai pritaikė senesnę užkrėtimo strategiją, modifikuodami failą „package.json“ su išankstinio diegimo priemone, kuri iškviečia „node setup.mjs“. Šis procesas atsisiunčia „Bun“ ir vykdo tą pačią kredencialus vagiančią kenkėjišką programą.
CVE-2026-45321 ir piktnaudžiavimas patikimais leidėjais
„TanStack“ ataka oficialiai buvo užregistruota kaip CVE-2026-45321 ir jai priskirtas kritinis CVSS balas – 9,6. Tyrėjai patvirtino, kad paveikti 42 „TanStack“ ekosistemos paketai ir 84 versijos.
Analizė atskleidė, kad kompromitacija kilo iš susietos „GitHub Actions“ atakos, išnaudojant „pull_request_target“ paleidiklį, „GitHub Actions“ talpyklos užkrėtimą ir OIDC žetonų išgavimą iš „GitHub Actions“ vykdyklių vykdymo metu. Pranešama, kad užpuolikai įdiegė kenkėjiškas apkrovas per našlaičių pakeitimus „GitHub“ šakose, prieš įterpdami jas į npm paketų tarball. Tada užpuolikai užgrobė teisėtus „TanStack“ / maršrutizatoriaus darbo eigas, kad paskelbtų pažeistus paketus su galiojančiais SLSA kilmės patvirtinimais.
Šis įvykis žymi istorinį programinės įrangos tiekimo grandinės atakų eskalavimą. Kenkėjiški paketai turėjo galiojančius SLSA 3 lygio kilmės parašus, todėl tai pirmasis dokumentuotas npm kirminas, galintis platinti kenkėjiškus paketus su autentiškais kūrimo patvirtinimais. Kenkėjiškų programų kampanija vėliau išplito už „TanStack“ ribų ir išplito į „UiPath“, „DraftLab“ ir kitų kūrėjų prižiūrimas ekosistemas.
Ši operacija smarkiai piktnaudžiauja patikimais publikavimo darbo srautais. Užuot tiesiogiai vogęs npm prisijungimo duomenis, užpuoliko kontroliuojamas kodas, veikiantis patikimuose CI/CD kanaluose, pasinaudojo OIDC leidimais, kad sukurtų trumpalaikius publikavimo žetonus kūrimo proceso metu. Tai leido publikuoti kenkėjiškus paketus per teisėtus išleidimo kanalus, apeinant įprastas autentifikavimo apsaugos priemones.
Savaime plintantis kirminų elgesys kelia nerimą
Vienas pavojingiausių „Mini Shai-Hulud“ kampanijos aspektų yra jos kirminą primenantis plitimo modelis. Kenkėjiška programa aktyviai ieško publikuojamų npm žetonų, sukonfigūruotų su bypass_2fa=true, išvardija pažeisto kūrėjo prižiūrimus paketus ir keičia „GitHub OIDC“ žetonus į atskirų paketų publikavimo žetonus. Šis mechanizmas leidžia kenkėjiškai programai plisti horizontaliai po paketų ekosistemas, nenaudojant tradicinių kredencialų vagystės metodų.
Ataka taip pat išnaudojo saugyklos lygio pasitikėjimo konfigūracijas „GitHub“ OIDC patikimo leidėjo modelyje. Kadangi pasitikėjimas buvo suteikiamas plačiai saugyklos lygmeniu, o ne apribotas apsaugotomis šakomis ir konkrečiais darbo eigos failais, kenkėjiški darbo eigos vykdymai, kuriuos sukėlė našlaičiai pakeitimai, galėjo prašyti teisėtų npm publikavimo žetonų.
Kita nerimą kelianti funkcija – „mirusiojo žmogaus jungiklio“ diegimas. Kenkėjiška programa įdiegia apvalkalo scenarijų, kuris kas 60 sekundžių pakartotinai apklausia api.github.com/user galinį tašką, kad nustatytų, ar užpuoliko sukurti npm žetonai lieka aktyvūs. Šie žetonai turi grėsmingą aprašymą „IfYouRevokeThisTokenItWipeTheComputerOfTheOwner“.
Jei gynėjai panaikina prieigos raktą per „npm“ ataskaitų sritį, kenkėjiška programa paleidžia destruktyvų procesą, vykdydama komandą „rm -rf ~/“, efektyviai paversdama infekciją valymo kenkėjiška programa. Šis agresyvus elgesys rodo didelę „TeamPCP“ operacinės taktikos evoliuciją ir demonstruoja vis sudėtingesnius priverstinio atkaklumo metodus. Todėl saugumo komandoms patariama izoliuoti ir atkurti užkrėstas sistemas prieš panaikinant pažeistus „npm“ prisijungimo duomenis.
Paveikti paketai ir didėjantis poveikis ekosistemai
Kampanija paveikė daugiau nei 170 paketų, naudojamų tiek „npm“, tiek „PyPI“, o tai kartu sudaro daugiau nei 518 milijonų atsisiuntimų. Tyrėjai taip pat nustatė mažiausiai 400 saugyklų, sukurtų naudojant pavogtus prisijungimo duomenis, ir visose jose buvo frazė „Shai-Hulud: Here We Go Again“.
Paveikti paketai apima:
apsauginiai turėklai-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/weather@0.5.10
@squawk/flightplan@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
Kenkėjiška programa taip pat naudoja kelis nereikalingus išgavimo kanalus. Be sesijos protokolo infrastruktūros ir „GitHub“ neveikiančių duomenų, pavogti prisijungimo duomenys perduodami per typosquatt domeną git-tanstack.com.
„PyPI“ kenkėjiška programa pristato geofencuotą destruktyviąją logiką
Su kenkėjiškais „Mistral AI“ ir „Guardrails AI“ paketais susiję „Python“ pagrindu sukurti kenkėjiškų programų variantai labai skiriasi nuo „JavaScript“ naudingosios apkrovos, platinamos per „npm“. Pažeistas „mistralai PyPI“ paketas atsisiunčia kredencialų vagystę iš nuotolinio serverio, kurio adresas yra 83.142.209.194.
Tyrėjai atrado, kad „Python“ kenkėjiška programa naudoja šalį identifikuojančią logiką, skirtą išvengti vykdymo rusakalbėje aplinkoje. Ji taip pat apima geofencingą destruktyvų mechanizmą, kuris įveda vieną iš šešių tikimybę vykdyti komandą „rm -rf /“, jei užkrėsta sistema atrodo esanti Izraelyje arba Irane.
Toks elgesys rodo nerimą keliančią evoliuciją link regionui pritaikyto destruktyvaus naudingojo turinio diegimo atvirojo kodo paketų ekosistemose.
Auganti tapatybės pagrindu veikiančių tiekimo grandinės atakų grėsmė
„Mini Shai-Hulud“ kampanija atspindi platesnę šiuolaikinių tiekimo grandinės atakų transformaciją. Užuot vien tik sutelkę dėmesį į paketų pažeidimus, kibernetiniai agentai vis dažniau taikosi į patikimas CI/CD tapatybes, publikavimo darbo eigas ir debesijos pagrindu veikiančias automatizavimo sistemas.
Kai užpuolikai gauna prieigą prie programinės įrangos leidybos infrastruktūros, pats kūrimo procesas tampa kenkėjiškų programų platinimo mechanizmu. Kadangi daugelis kenkėjiškų veiksmų atliekami per teisėtus darbo eigą, patikimus patvirtinimus ir autentiškas išleidimo sistemas, tradicinės saugumo kontrolės priemonės gali nesugebėti aptikti kenkėjiško elgesio.
Pagrindinės šios naujos kartos tiekimo grandinės atakų charakteristikos:
- Piktnaudžiavimas patikimais leidybos ir OIDC žetonų mainų mechanizmais
- Platinimas per teisėtus CI/CD darbo eigų procesus ir kūrimo sistemas
- Galiojančių SLSA atestatų naudojimas kenkėjiškiems paketams užmaskuoti
- Daugiakanalio kredencialų išfiltravimo ir išsaugojimo operacijos
- Naikinantys atsakomojo poveikio mechanizmai, skirti įbauginti gynėjus
Kampanijos išplėtimas į dirbtinio intelekto įrankius, įmonių automatizavimą, paieškos infrastruktūrą, front-end kūrimą, su aviacija susijusius įrankius ir CI/CD ekosistemas rodo, kaip glaudžiai tarpusavyje susijusios tapo programinės įrangos tiekimo grandinės. Elgesio stebėjimas paketų diegimo ir kūrimo metu dabar yra vis svarbesnis norint aptikti grėsmes, kurios iš pirmo žvilgsnio atrodo tikros.