Mini Shai Hulud colpisce npm e PyPI: malware ruba credenziali e infetta le pipeline GitHub Actions
Featured

Mini Shai Hulud colpisce npm e PyPI: malware ruba credenziali e infetta le pipeline GitHub Actions

La campagna Mini Shai Hulud sta riportando al centro dell’attenzione il rischio di supply chain attack nel mondo open source, colpendo ecosistemi molto usati come npm e PyPI. In questa ondata sono stati compromessi pacchetti legati a TanStack, Mistral AI, Guardrails AI, OpenSearch e altri progetti, con l’obiettivo di distribuire un malware capace di rubare credenziali e propagarsi in modo autonomo attraverso pipeline CI/CD.

Nei pacchetti npm alterati è stata inserita una componente JavaScript offuscata pensata per analizzare l’ambiente di esecuzione e avviare un credential stealer mirato a servizi cloud, wallet di criptovalute, strumenti AI, app di messaggistica e sistemi di integrazione continua come GitHub Actions. L’esfiltrazione dei dati avviene verso un dominio dedicato e sfrutta anche infrastrutture legate a reti di messaggistica orientate alla privacy per ridurre la probabilità di blocco in contesti aziendali. Come canale di riserva, i dati cifrati possono essere caricati su repository controllati dagli attaccanti tramite API GitHub usando token rubati.

Un aspetto particolarmente insidioso riguarda la persistenza. Il malware può agganciarsi a strumenti di sviluppo come Visual Studio Code e ambienti correlati, riattivandosi ad ogni avvio. Inoltre può installare un servizio di monitoraggio dei token GitHub e iniettare workflow malevoli in GitHub Actions per serializzare i segreti del repository e inviarli a un server esterno.

Nel caso TanStack, la compromissione è stata classificata con CVE 2026 45321 con severità critica e ha coinvolto decine di pacchetti e versioni. La catena di attacco descrive un abuso di meccanismi fidati di pubblicazione tramite OIDC e workflow GitHub Actions, arrivando a generare pacchetti malevoli con attestazioni di provenienza valide, rendendo più difficile distinguere una release legittima da una compromessa. Il worm si distingue anche per la capacità di propagarsi ad altri pacchetti dello stesso maintainer, cercando token pubblicabili e sfruttando la fiducia assegnata a livello repository nelle configurazioni di trusted publisher.

È emersa anche una logica aggressiva di dead man switch: in determinate condizioni la revoca di token può innescare routine distruttive sul sistema infetto. La campagna ha inoltre toccato PyPI, dove alcuni pacchetti eseguono codice già al momento dell’import, scaricando ed eseguendo artefatti remoti senza verifica di integrità. I numeri indicano un impatto su oltre cento pacchetti e centinaia di milioni di download complessivi, con molteplici repository creati usando credenziali sottratte.