Mini Shai-Hulud-orm

Trusselaktøren kjent som TeamPCP har blitt koblet til en sofistikert angrepskampanje i forsyningskjeden som er rettet mot mye brukte npm- og PyPI-pakker tilknyttet TanStack, UiPath, Mistral AI, OpenSearch, Guardrails AI og flere andre økosystemer. Operasjonen, knyttet til den utviklende Mini Shai-Hulud-skadevarekampanjen, demonstrerer en betydelig opptrapping i misbruk av programvare i forsyningskjeden og identitetsdrevne kompromissteknikker.

Forskere identifiserte at ondsinnede npm-pakker ble modifisert for å inkludere en obfuskert JavaScript-komponent kalt router_init.js. Denne nyttelasten profilerer infiserte miljøer og distribuerer en avansert legitimasjonstyver som retter seg mot skyleverandører, kryptovaluta-lommebøker, AI-utviklingsverktøy, meldingsplattformer, CI/CD-systemer og GitHub Actions-miljøer. Eksfiltrerte data overføres primært til filev2.getsession.org-domenet.

Bruken av Session Protocol-infrastruktur fremhever et bevisst forsøk på å omgå bedriftens sikkerhetskontroller. Fordi domenet tilhører en desentralisert personvernfokusert meldingsplattform, er det mindre sannsynlig at det blir blokkert av tradisjonelle nettverksforsvar. Som en sekundær eksfiltreringsmetode blir krypterte data lagret i angriperkontrollerte databaser gjennom GitHub GraphQL API ved hjelp av stjålne GitHub-autentiseringstokener under forfatteridentiteten claude@users.noreply.github.com.

Persistensmekanismer og utvidelse av legitimasjonstyveri

Den skadelige programvaren introduserer flere persistens- og overvåkingsfunksjoner som er utformet for å opprettholde langsiktig tilgang til kompromitterte utviklingsmiljøer. Persistens-kroker er etablert i Claude Code og Microsoft Visual Studio Code, slik at den skadelige programvaren overlever systemstarter og automatisk starter på nytt når IDE-ene åpnes.

I tillegg distribueres en gh-token-monitor-tjeneste for kontinuerlig å overvåke og re-eksfiltrere GitHub-tokens. To ondsinnede GitHub Actions-arbeidsflyter injiseres også i kompromitterte repositorier. Disse arbeidsflytene serialiserer repositorihemmeligheter i JSON-format og laster opp dataene til det eksterne endepunktet api.masscan.cloud.

Det siste TanStack-kompromitteret skiller seg betydelig fra tidligere hendelser i forsyningskjeden. I stedet for å stole på en preinstall-krok, innebygde angriperne en ondsinnet JavaScript-fil direkte i pakke-tarballer samtidig som de introduserte en valgfri avhengighet knyttet til en GitHub-hostet pakke. Denne avhengigheten inneholder en prepare lifecycle-krok som kjører nyttelasten gjennom Bun-kjøretidsmiljøet.

De trojaneriserte Mistral AI-pakkene tok i bruk en eldre infeksjonsstrategi ved å modifisere package.json-filen med en preinstall-krok som starter node setup.mjs. Denne prosessen laster ned Bun og kjører den samme skadelige programvaren som stjeler legitimasjon.

CVE-2026-45321 og misbruk av pålitelig publisering

TanStack-angrepet er offisielt sporet som CVE-2026-45321 og har fått en kritisk CVSS-poengsum på 9,6. Etterforskere bekreftet at 42 pakker og 84 versjoner innenfor TanStack-økosystemet var berørt.

Analysen viste at kompromitteringen oppsto fra et kjedet GitHub Actions-angrep som utnyttet pull_request_target-utløseren, GitHub Actions-cacheforgiftning og uttrekking av OIDC-tokens fra GitHub Actions-runners under kjøring. Angriperne skal ha iscenesatt ondsinnede nyttelaster gjennom foreldreløse commits i GitHub-forks før de injiserte dem i npm-pakke-tarballer. Angriperne kapret deretter legitime TanStack-/ruterarbeidsflyter for å publisere kompromitterte pakker med gyldige SLSA-proveniensattester.

Denne utviklingen markerer en historisk opptrapping av angrep i programvareforsyningskjeden. De ondsinnede pakkene hadde gyldige SLSA Build Level 3-provenienssignaturer, noe som gjorde dette til den første dokumenterte npm-ormen som var i stand til å distribuere ondsinnede pakker med autentiske build-attestasjoner. Skadevarekampanjen utvidet seg deretter utover TanStack og spredte seg til økosystemer vedlikeholdt av UiPath, DraftLab og andre utviklere.

Operasjonen misbruker i stor grad pålitelige publiseringsarbeidsflyter. I stedet for å stjele npm-legitimasjon direkte, utnyttet angriperkontrollert kode som kjørte i pålitelige CI/CD-pipeliner OIDC-tillatelser til å lage kortlivede publiseringstokener under byggeprosessen. Dette tillot at skadelige pakker ble publisert gjennom legitime utgivelsespipeliner samtidig som konvensjonelle autentiseringsbeskyttelser ble omgått.

Selvforplantende ormeatferd vekker alarm

Et av de farligste aspektene ved Mini Shai-Hulud-kampanjen er dens ormlignende forplantningsmodell. Skadevaren søker aktivt etter publiserbare npm-tokener konfigurert med bypass_2fa=true, lister opp pakker som vedlikeholdes av den kompromitterte utvikleren, og utveksler GitHub OIDC-tokener med publiseringstokener per pakke. Denne mekanismen gjør det mulig for skadevaren å spre seg lateralt på tvers av pakkeøkosystemer uten å være avhengig av tradisjonelle teknikker for påloggingstyveri.

Angrepet utnyttet også tillitskonfigurasjoner på repositoriumnivå i GitHubs OIDC-modell for klarerte utgivere. Fordi tillit ble gitt bredt på repositoriumnivå i stedet for å være begrenset til beskyttede grener og spesifikke arbeidsflytfiler, kunne ondsinnede arbeidsflytkjøringer utløst av foreldreløse commits be om legitime npm-publiseringstokener.

En annen forstyrrende funksjon involverer utplasseringen av en «dødmannsbryter». Skadevaren installerer et skallskript som gjentatte ganger avspør api.github.com/user-endepunktet hvert 60. sekund for å avgjøre om angriperskapte npm-tokener fortsatt er aktive. Disse tokenene har den truende beskrivelsen IfYouRevokeThisTokenItWillWipeTheComputerOfTheOwner.

Hvis forsvarere tilbakekaller tokenet via npm-dashbordet, starter skadevaren en destruktiv rutine som utfører rm -rf ~/, og omdanner effektivt infeksjonen til «wisk-malware». Denne aggressive oppførselen indikerer en betydelig utvikling i TeamPCPs operative taktikk og demonstrerer økende sofistikering i tvangsmessige vedvarende metoder. Sikkerhetsteam anbefales derfor å isolere og avbilde infiserte systemer før de tilbakekaller kompromitterte npm-legitimasjon.

Berørte pakker og økende økosystempåvirkning

Kampanjen har påvirket mer enn 170 pakker på tvers av både npm og PyPI, som til sammen står for over 518 millioner nedlastinger. Etterforskerne identifiserte også minst 400 arkiver opprettet med stjålne legitimasjonsdetaljer, som alle inneholder uttrykket «Shai-Hulud: Here We Go Again».

Berørte pakker inkluderer:

guardrails-ai@0.10.1 (PyPI)
mistralai@2.4.6 (PyPI)
@opensearch-prosjekt/opensearch@3.5.3, 3.6.2, 3.7.0, 3.8.0
@squawk/mcp@0.9.5
@squawk/vær@0.5.10
@squawk/flyplan@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

Skadevaren benytter også flere redundante eksfiltreringskanaler. I tillegg til Session Protocol-infrastruktur og GitHub-dead drops, overføres stjålne legitimasjonsdetaljer via det typosquattede domenet git-tanstack.com.

PyPI-skadevare introduserer geofenced destruktiv logikk

De Python-baserte skadevarevariantene knyttet til de ondsinnede Mistral AI- og Guardrails AI-pakkene skiller seg vesentlig fra JavaScript-nyttelastene som distribueres via npm. Den kompromitterte mistralai PyPI-pakken laster ned en legitimasjonstyver fra den eksterne verten 83.142.209.194.

Forskere oppdaget at Python-skadevaren inneholder landsbevisst logikk som er utformet for å unngå kjøring i russiskspråklige miljøer. Den inkluderer også en geofenced destruktiv mekanisme som introduserer en sannsynlighet på én til seks for å kjøre rm -rf / hvis det infiserte systemet ser ut til å befinne seg i Israel eller Iran.

Denne oppførselen demonstrerer en bekymringsfull utvikling mot regionbevisst destruktiv nyttelastdistribusjon i økosystemer med åpen kildekode-pakker.

Den økende trusselen fra identitetsdrevne angrep i forsyningskjeden

Mini Shai-Hulud-kampanjen gjenspeiler en bredere transformasjon i moderne forsyningskjedeangrep. I stedet for å fokusere utelukkende på pakkekompromittering, retter trusselaktører seg i økende grad mot pålitelige CI/CD-identiteter, publiseringsarbeidsflyter og skybaserte automatiseringsrørledninger.

Når angripere får tilgang til programvarepubliseringsinfrastruktur, blir selve utviklingsprosessen distribusjonsmekanismen for skadelig programvare. Fordi mange ondsinnede handlinger skjer gjennom legitime arbeidsflyter, pålitelige attester og autentiske utgivelsessystemer, kan tradisjonelle sikkerhetskontroller mislykkes i å identifisere ondsinnet oppførsel.

Viktige kjennetegn som definerer denne nye generasjonen av angrep i forsyningskjeden inkluderer:

  • Misbruk av pålitelig publisering og OIDC-tokenutvekslingsmekanismer
  • Formering gjennom legitime CI/CD-arbeidsflyter og byggesystemer
  • Bruk av gyldige SLSA-attesteringer for å skjule skadelige pakker
  • Flerkanals legitimasjonsuttrekk og persistensoperasjoner
  • Destruktive gjengjeldelsesmekanismer utformet for å skremme forsvarere

Kampanjens utvidelse til å omfatte AI-verktøy, bedriftsautomatisering, søkeinfrastruktur, frontend-utvikling, luftfartsrelaterte verktøy og CI/CD-økosystemer viser hvor tett sammenkoblede programvareforsyningskjeder har blitt. Atferdsovervåking under pakkeinstallasjon og bygging er nå stadig viktigere for å oppdage trusler som virker legitime ved første øyekast.

Trender

Mest sett

Laster inn...