CSIRT Toscana

Supply Chain Attack: rilevata nuova ondata di compromissione pacchetti NPM (BL01/260512/CSIRT-ITA)

Data:
12 Maggio 2026

Sintesi

Rilevata una campagna su larga scala di compromissione della supply chain nell’ecosistema npm, denominata ” Mini Shai-Hulud “. L’attacco sfrutta un malware di tipo worm per infiltrarsi negli ambienti di sviluppo e nelle pipeline di Continuous Integration/Continuous Deployment (CI/CD). L’obiettivo primario è l’esfiltrazione di credenziali sensibili e la successiva propagazione automatizzata attraverso la pubblicazione di versioni malevole di pacchetti legittimi. Tra i soggetti colpiti figurano framework ad ampia diffusione come TanStack e SDK ufficiali di Mistral AI.

Descrizione e potenziali impatti

La minaccia si articola attraverso una sequenza di operazioni automatizzate volte a massimizzare la persistenza e la diffusione:

Vettore di infezione

Il malware viene introdotto come dipendenza (spesso dichiarata come optionalDependency ) in pacchetti npm compromessi. In fase di installazione, sfrutta lo script prepare della dipendenza Git per avviare il malware e quindi eseguire codice arbitrario.

Meccanismo di propagazione

Una volta eseguito in un ambiente dotato di privilegi di pubblicazione (es. GitHub Actions con Trusted Publishing/OIDC), il malware ricerca ed esfiltra i token di autenticazione e i segreti d’ambiente (.env, chiavi AWS/Azure, credenziali Kubernetes). Successivamente tenta di utilizzare tali asset per iniettare codice malevolo in altri progetti gestiti dall’utente o dall’organizzazione, pubblicando nuove versioni infette senza intervento umano.

Evasione e persistenza

L’impiego di optionalDependencies che puntano a dipendenze Git esterne permette di eludere parzialmente i controlli di integrità basati sui registri ufficiali. L’esecuzione si conclude con un errore fittizio ( && exit 1 ) che, essendo associato a dipendenze opzionali, non interrompe il processo di build principale agendo in modo silente.

Impatto

La compromissione della riservatezza dei segreti aziendali accessibili sugli ambienti interessati, il potenziale accesso non autorizzato a infrastrutture cloud e la perdita di integrità del codice sorgente distribuito agli utenti finali.

Prodotti e versioni affette

Sono stati identificati oltre 160 pacchetti compromessi. Gli scope e i pacchetti di maggior rilievo includono:

  • @tanstack/ (incluse versioni specifiche di react-router, query, start, form)
  • @mistralai/ (SDK ufficiali)
  • @uipath/
  • @squawk/
  • @tallyui/
  • safe-action
  • ts-dna
  • altri pacchetti non preceduti da scope

Le versioni malevole sono generalmente caratterizzate da incrementi di patch anomali o release pubblicate in finestre temporali ristrette tra l’11 e il 12 maggio 2026. Si segnalano, a titolo esemplificativo, le versioni 1.169.5 e 1.169.8 di @tanstack/react-router.

Azioni di mitigazione

Si raccomanda l’adozione immediata delle seguenti misure di sicurezza:

  1. Ispezione dei Lockfile: Analizzare i file package-lock.json , yarn.lock o pnpm-lock.yaml alla ricerca di riferimenti a repository Git esterni non autorizzati o versioni dei pacchetti sopra elencati rilasciate nelle ultime 48 ore.
  2. Pinning delle Dipendenze: Forzare il downgrade delle librerie coinvolte a versioni note e verificate. Rimuovere i modificatori di versione (^ o ~) per impedire aggiornamenti automatici a release potenzialmente contaminate.
  3. Rotazione delle Credenziali: Procedere alla revoca e rigenerazione immediata di tutti i segreti presenti negli ambienti CI/CD, inclusi token npm, GitHub Personal Access Tokens (PAT), chiavi di accesso ai fornitori cloud e certificati di deployment.
  4. Monitoraggio di Rete: Implementare filtri in uscita sugli agenti di build per bloccare connessioni verso domini non censiti o endpoint sospetti utilizzati per l’esfiltrazione dei dati.
  5. Bonifica degli Ambienti: Eseguire la scansione degli ambienti di sviluppo locali per individuare la presenza di processi persistenti o modifiche non autorizzate ai file di configurazione globale di npm ( .npmrc ).

Riferimenti

Change log

Versione Note Data
1.0 Pubblicato il 12-05-2026 12/05/2026

Il presente articolo è un prodotto originale di csirt.gov.it, riproposto qui a solo scopo di aumentarne la visibilità. Può essere visualizzato in versione originale al seguente link

Ultimo aggiornamento

12 Maggio 2026, 18:00