Il 31 marzo 2026 il gruppo nordcoreano UNC1069 ha condotto uno degli attacchi supply chain più rilevanti dell’anno compromettendo il popolarissimo pacchetto Axios su npm, libreria JavaScript utilizzata da milioni di progetti per la gestione delle richieste HTTP. Gli attaccanti hanno preso il controllo dell’account del maintainer e pubblicato le versioni 1.14.1 e 0.30.4, introducendo la dipendenza malevola plain-crypto-js senza modificare il codice sorgente principale della libreria. La scelta è stata estremamente sofisticata: mantenere il core intatto per non destare sospetti e sfruttare invece un hook postinstall capace di eseguire codice silenziosamente su Windows, macOS e Linux. In poche ore l’operazione ha trasformato un normale aggiornamento di dipendenza in un vettore di infezione cross-platform ad altissimo impatto.
Cosa leggere
Il takeover dell’account npm del maintainer di Axios
L’elemento iniziale dell’attacco è stata la compromissione dell’account npm del maintainer principale di Axios, Jason Saayman. Gli operatori hanno modificato l’indirizzo email associato, sostituendolo con un account Proton, e hanno preso il controllo anche del profilo GitHub collegato. Questa doppia compromissione ha permesso di pubblicare nuove versioni del pacchetto senza attivare i normali segnali di sicurezza che derivano dalla presenza di commit GitHub corrispondenti o pipeline OIDC. Il controllo simultaneo dei due account ha dato agli attaccanti la possibilità di far apparire le release come perfettamente legittime, ritardando la scoperta del problema e consentendo la distribuzione in una finestra temporale molto critica.
Le release malevole 1.14.1 e 0.30.4 restano quasi indistinguibili
Le due versioni malevole di Axios sono state pubblicate a circa quaranta minuti di distanza. La tecnica utilizzata è particolarmente interessante dal punto di vista forense: il codice applicativo della libreria non è stato alterato. Tutta la compromissione si concentra nel package.json, dove viene aggiunta la dipendenza plain-crypto-js con relativo script postinstall. Questo rende la release quasi indistinguibile da un aggiornamento normale, soprattutto in ambienti CI/CD dove il controllo manuale del manifest delle dipendenze non viene eseguito. È proprio questa minimizzazione delle modifiche ad aver aumentato drasticamente il tasso di successo potenziale dell’attacco.
Plain-crypto-js attiva SILKBELL durante il postinstall
La dipendenza plain-crypto-js versione 4.2.1 è stata il vero vettore operativo. Attraverso lo script postinstall, npm esegue automaticamente il file setup.js in background durante l’installazione. Questo comportamento standard del package manager viene abusato per avviare il dropper SILKBELL, un componente fortemente offuscato progettato per adattarsi al sistema operativo della vittima.
Il dropper utilizza routine XOR, Base64 e caricamento dinamico dei moduli di sistema per nascondere URL, comandi e logica operativa. Una volta completata l’installazione del payload, il codice ripristina una versione pulita del manifest e rimuove le tracce dell’hook malevolo, complicando enormemente le analisi post-incidente e la ricostruzione dei fatti.
La catena Windows usa PowerShell copiato e persistenza via registro
Su Windows, SILKBELL utilizza una tecnica di living-off-the-land molto efficace. Copia powershell.exe in una nuova posizione dentro %PROGRAMDATA% con un nome alternativo, così da eludere parte dei controlli basati su percorso e reputazione del file. Successivamente scarica uno script PowerShell remoto e lo esegue con finestra nascosta e policy bypass.
La persistenza viene stabilita tramite file batch nascosto e chiave di avvio automatico nel registro utente. Questo garantisce l’esecuzione del payload anche dopo reboot e login successivi, trasformando la macchina in un host persistente per il controllo remoto.
macOS e Linux ricevono payload dedicati con esecuzione silenziosa
La componente cross-platform è uno degli aspetti più sofisticati dell’operazione. Su macOS il dropper utilizza AppleScript per scaricare un binario Mach-O in cache di sistema, assegnargli permessi eseguibili e lanciarlo in background tramite shell.
Su Linux la logica è simile ma orientata a uno script Python, salvato in /tmp e avviato con nohup per garantire persistenza e resistenza alla chiusura della sessione shell. In entrambi i casi vengono eliminate le tracce temporanee per ridurre la superficie forense.
Questa preparazione simultanea di payload per tre sistemi operativi dimostra che l’operazione era stata pianificata con largo anticipo e con test approfonditi su ambienti differenti.
WAVESHAPER.V2 apre il controllo remoto del sistema
Il payload finale installato è il backdoor WAVESHAPER.V2, evoluzione della famiglia già attribuita in precedenza agli attori nordcoreani. Il malware comunica periodicamente con il server di comando e controllo tramite beacon JSON codificati in Base64 e supporta un set di comandi molto ampio.
Tra le funzioni più pericolose emergono enumerazione directory, esecuzione di script shell, caricamento di binari arbitrari, iniezione di codice e raccolta di informazioni di sistema come hostname, username, uptime e timezone. In un ambiente di sviluppo questo può tradursi nel furto di token, chiavi API, credenziali cloud, segreti CI/CD e accesso a repository privati.
La scelta di colpire Axios amplifica enormemente la portata di queste capacità malevole, dato il numero enorme di pipeline automatizzate che installano dipendenze npm senza supervisione umana.
Google attribuisce l’attacco supply chain a UNC1069
L’attribuzione ad UNC1069 arriva con alta confidenza grazie alle sovrapposizioni infrastrutturali e alle somiglianze con precedenti campagne collegate a gruppi nordcoreani come BlueNoroff. I ricercatori hanno identificato percorsi di build, tecniche di persistenza e moduli già osservati in attacchi contro il settore crypto e fintech.
L’elemento chiave è la continuità operativa: uso di malware cross-platform, focus su supply chain software e obiettivo finanziario tramite accesso a ambienti di sviluppo ad alta densità di credenziali.
L’impatto potenziale sull’ecosistema JavaScript è enorme
Anche se la finestra temporale dell’attacco è stata limitata a poche ore, l’impatto potenziale resta enorme. Axios supera i 100 milioni di download settimanali e viene installato in pipeline CI, ambienti cloud, frontend enterprise, backend API e infrastrutture serverless.
Questo significa che anche una finestra ridotta può aver esposto centinaia di migliaia di build automatizzate a un backdoor con capacità di controllo remoto completo. La combinazione tra popolarità del pacchetto, stealth del postinstall e payload tri-piattaforma rende questo incidente uno dei casi più gravi di compromissione npm del 2026.
Per team DevSecOps e maintainer open source il messaggio è chiaro: il rischio non è più solo la libreria vulnerabile, ma il trust model dell’intero ecosistema package manager.
Fonti: Google Threat Intelligence, analisi supply chain npm 31 marzo 2026, incident response Axios package compromise
Image placeholder
Approfondimento sui nuovi attacchi supply chain contro npm, CI/CD e ambienti JavaScript enterprise
Iscriviti alla Newsletter
Non perdere le analisi settimanali: Entra nella Matrice Digitale.
Matrice Digitale partecipa al Programma Affiliazione Amazon EU. In qualità di Affiliato Amazon, ricevo un guadagno dagli acquisti idonei. Questo non influenza i prezzi per te.









