Un attacco alla supply chain npm ha colpito l’intero ecosistema Mastra. Oltre 140 pacchetti sono stati trojanizzati tramite un account contributore dimenticato. Il Mastra npm supply chain attack rappresenta uno degli incidenti più significativi del 2026 nel mondo open source.
Come è iniziato tutto: la presa di controllo dello scope npm
Un account dimenticato apre la porta agli attaccanti
Il punto di ingresso non era un exploit sofisticato. Era un account contributore abbandonato, non protetto da autenticazione multi-fattore.
Gli attaccanti hanno rilevato questo account. Da lì, hanno ottenuto il controllo dell’intero scope @mastra su npm. Una singola credenziale compromessa ha esposto centinaia di migliaia di sviluppatori.
Vale la pena sottolineare la natura sistemica del problema. Non serve bucare un server. Basta trovare l’anello più debole della catena umana.
Il ruolo del pacchetto easy-day-js
Dopo aver preso il controllo, gli attaccanti hanno iniettato codice malevolo tramite una dipendenza: easy-day-js. Questo pacchetto apparentemente innocuo fungeva da vettore.
Il codice veniva eseguito durante la fase postinstall. Questa fase si attiva automaticamente quando uno sviluppatore esegue npm install. Non è richiesta alcuna interazione aggiuntiva.
Di conseguenza, la compromissione avveniva in modo silenzioso e immediato.
L’anatomia del payload: cosa succede dopo l’installazione
Dal pacchetto al payload remoto
Il meccanismo di attacco seguiva uno schema preciso. Il pacchetto malevolo scaricava un payload remoto durante l’installazione. Questo approccio è noto come postinstall payload.
Secondo le analisi di JFrog Research e Endor Labs, il payload aveva capacità di esecuzione remota di codice. In alcuni casi, gli analisti hanno rilevato comportamenti simili a un worm. Il malware si propagava autonomamente verso altri pacchetti nell’ambiente della vittima.
In particolare, StepSecurity ha documentato come la tecnica si diffondesse attraverso binding.gyp, un file usato per compilare moduli nativi in Node.js. Questo vettore secondario ampliava ulteriormente la superficie di attacco.
I dati a rischio e gli ambienti colpiti
I pacchetti Mastra sono ampiamente usati nello sviluppo di agenti AI e applicazioni enterprise. Gli ambienti colpiti includevano pipeline CI/CD e workstation di sviluppo.
Tuttavia, il rischio non si limitava ai singoli sviluppatori. Le pipeline automatizzate eseguono npm install senza supervisione umana. Un pacchetto compromesso in un workflow CI/CD può raggiungere ambienti di produzione.
Microsoft Security Intelligence ha confermato l’incidente tramite un post ufficiale su X. La società ha classificato l’evento come una minaccia attiva alla catena di fornitura software.
Risposta dell’ecosistema e lezioni per i CISO
Cosa hanno fatto npm, Mastra e la community
La risposta è stata rapida. Il team di Mastra ha revocato l’accesso all’account compromesso. npm ha rimosso i pacchetti malevoli dal registro pubblico.
Parallelamente, diversi vendor di sicurezza hanno pubblicato indicatori di compromissione (IoC). Aikido Security ha identificato oltre 140 pacchetti affetti. Snyk ha fornito una ricostruzione dettagliata della catena di compromissione.
SafeDep ha documentato la tecnica di scope takeover. Questa tecnica sfrutta account npm inattivi con permessi elevati. È una vulnerabilità strutturale del modello di governance degli scope npm.
Le misure di mitigazione da adottare subito
Questo incidente insegna lezioni concrete. I CISO e i responsabili DevSecOps devono agire su più livelli.
In primo luogo, abilitare l’autenticazione multi-fattore su tutti gli account npm con permessi di pubblicazione. Anche gli account dei contributori inattivi.
In secondo luogo, implementare il blocco dei lifecycle scripts nelle pipeline CI/CD. Il flag --ignore-scripts di npm impedisce l’esecuzione automatica di postinstall.
Inoltre, adottare strumenti di analisi delle dipendenze con aggiornamento in tempo reale. Snyk, SafeDep e Endor Labs offrono questo tipo di protezione.
Infine, condurre audit periodici degli accessi agli scope npm aziendali. Gli account dormienti sono una superficie di attacco spesso ignorata.
Conclusione
Il Mastra npm supply chain attack è un caso di studio esemplare. Dimostra come la sicurezza della catena di fornitura software non riguardi solo il codice. Riguarda la governance degli accessi, la gestione delle identità e la cultura della sicurezza.
In questo contesto, la complessità degli ecosistemi open source moderni amplifica ogni singolo punto di debolezza. Un account dimenticato può diventare un vettore di compromissione globale.
La domanda che ogni organizzazione deve porsi non è “se” subirà un attacco simile. È “quando” — e se sarà pronta a rilevarlo in tempo.
Fonti
- SafeDep – Mastra npm scope takeover
- StepSecurity – Mastra npm packages compromised using easy-day-js
- Aikido Security – Over 140 popular Mastra npm packages hit
- JFrog Research – easy-day-js
- Snyk – A forgotten contributor account compromised the entire Mastra npm scope
- StepSecurity – binding-gyp npm supply chain attack
- Endor Labs – Mastra npm org compromised
- Microsoft Security Intelligence su X
- Reddit – r/cybersecurity discussion
- Microsoft Security Blog – Fonte originale
Fonte: Articolo originale
Incidenti come il Mastra npm supply chain attack evidenziano quanto sia critica la condivisione tempestiva di threat intelligence tra organizzazioni. IsacChain permette la condivisione sicura e verificata di IoC e indicatori di compromissione tra membri ISAC, con compliance NIS2 automatizzata integrata nei flussi operativi. La verifica blockchain garantisce l’integrità e la tracciabilità di ogni dato condiviso, rendendo impossibile la manomissione delle informazioni. Scopri come IsacChain può aiutare la tua organizzazione su www.isacchain.com