TeamPCPde dreigingsactor achter de recente supply chain-aanval, is in verband gebracht met het compromitteren van de npm- en PyPI-pakketten van TanStack, UiPath, Mistral AI, OpenSearch en Guardrails AI als onderdeel van een nieuwe Mini Shai-Hulud-campagne.
De getroffen npm-pakketten zijn aangepast om een versluierd JavaScript-bestand (“router_init.js”) te bevatten dat is ontworpen om de uitvoeringsomgeving te profileren en een uitgebreide inloggegevenssteler te lanceren die zich kan richten op cloudproviders, cryptocurrency-portefeuilles, AI-tools, berichten-apps en CI-systemen, waaronder Github Actions, Aikido Security, Endor Labs, SafeDep, Socket en StepSecurity. De gegevens worden geëxfiltreerd naar het domein “filev2.getsession(.)org”.
Het gebruik van de Session Protocol-infrastructuur is een doelbewuste poging van de aanvallers om detectie te omzeilen, omdat het onwaarschijnlijk is dat het domein binnen bedrijfsomgevingen wordt geblokkeerd, aangezien het tot een gedecentraliseerde, op privacy gerichte berichtendienst behoort. Als fallback-optie worden de gecodeerde gegevens via de GitHub GraphQL API met behulp van de gestolen GitHub-tokens vastgelegd in door de aanvaller gecontroleerde opslagplaatsen onder de auteursnaam “[email protected]”.
De malware is ook in staat om persistentie-hooks in Claude Code en Microsoft Visual Studio Code (VS Code) te creëren om het opnieuw opstarten te overleven en de stealer opnieuw uit te voeren bij elke lancering van de IDE’s.
Bovendien installeert het een gh-token-monitor service om GitHub-tokens te monitoren en opnieuw te exfiltreren, en injecteert het twee kwaadaardige GitHub Actions-workflows om repositorygeheimen in een JSON-object te serialiseren en de gegevens naar een externe server te uploaden (“api.masscan(.)cloud”).
TanStack heeft de inbreuk sindsdien herleid tot een aaneengesloten GitHub Actions-aanval waarbij de “pull_request_target”-trigger betrokken was, GitHub Actions-cachevergiftiging en runtime-geheugenextractie van een OIDC-token uit het GitHub Actions runner-proces. “Er zijn geen npm-tokens gestolen en de npm-publicatieworkflow zelf is niet aangetast”, aldus TanStack.

Concreet wordt vastgesteld dat de aanvallers de kwaadaardige lading in een GitHub-fork hebben geënsceneerd, deze in gepubliceerde npm-tarballs hebben geïnjecteerd en vervolgens de legitieme “TanStack/router”-workflow van het project hebben gekaapt om de gecompromitteerde versies met een geldige SLSA-herkomst te publiceren.
Wat de worm opvalt, is zijn vermogen om zichzelf naar andere pakketten te verspreiden door een publiceerbaar npm-token te lokaliseren met bypass_2fa ingesteld op true, elk pakket op te sommen dat door dezelfde onderhouder is gepubliceerd, en een GitHub OIDC-token uit te wisselen voor een publicatietoken per pakket om de traditionele authenticatie volledig te omzeilen.
Het TanStack supply chain-compromis heeft de CVE-identificatie CVE-2026-45321 toegewezen gekregen. Het heeft een CVSS-score van 9,6 uit een maximum van 10,0, wat een kritieke ernst aangeeft. Het incident heeft gevolgen gehad voor 42 pakketten en 84 versies in het TanStack-ecosysteem.
“De aanval publiceerde kwaadaardige versies via de eigen GitHub Actions-releasepijplijn van het project met behulp van gekaapte OIDC-tokens”, aldus StepSecurity-onderzoeker Ashish Kurmi.
“In een uiterst zeldzame escalatie bevatten de gecompromitteerde pakketten geldige SLSA Build Level 3 herkomstattesten, waardoor dit de eerste gedocumenteerde npm-worm is die geldig geattesteerde kwaadaardige pakketten produceert. De worm heeft zich sindsdien buiten TanStack verspreid naar pakketten van UiPath, DraftLab en andere beheerders.”
Naast TanStack heeft de Mini Shai-Hulud-campagne zich ook verspreid naar verschillende andere pakketten, waaronder enkele in PyPI –
- [email protected] (PyPI)
- [email protected] (PyPI)
- @opensearch-project/[email protected], 3.6.2, 3.7.0 en 3.8.0
- @squawk/[email protected]
- @squawk/[email protected]
- @squawk/[email protected]
- @tallyui/[email protected], 1.0.2 en 1.0.3
- @tallyui/[email protected], 1.0.2 en 1.0.3
Microsoft zei in zijn analyse van het kwaadaardige mistralai PyPI-pakket dat het ontworpen is om een credential stealer te downloaden van een externe server (“83.142.209(.)194”) die landbewuste logica bevat om Russischtalige omgevingen te vermijden en een “gegeofenceerde destructieve branch die een kans van 1 op 6 heeft om rm -rf / uit te voeren wanneer het systeem zich in Israël of Iran lijkt te bevinden.”
“Het compromis [email protected] is vooral opmerkelijk omdat de kwaadaardige code wordt uitgevoerd bij het importeren”, aldus Socket. “Het pakket controleert op Linux-systemen, downloadt een extern Python-artefact van https://git-tanstack.com/transformers.pyz, schrijft het naar /tmp/transformers.pyz en voert het uit met python3 zonder integriteitsverificatie.”
“Deze nieuwste activiteit laat zien dat de campagne zich blijft verspreiden over zowel npm als PyPI, met getroffen pakketten die de zoekinfrastructuur, AI-tooling, luchtvaartgerelateerde ontwikkelaarspakketten, bedrijfsautomatisering, frontend-tooling en CI/CD-aangrenzende ecosystemen omvatten.”