Notizie (IT)

L’attacco Axios a NPM inserisce RAT e compromette migliaia di sviluppatori

Axios
Foto: Axios - reprodução x

La popolare libreria Axios, utilizzata in numerosi progetti JavaScript per eseguire richieste HTTP, ha registrato un attacco alla supply chain che ha compromesso due specifiche versioni pubblicate nel registro NPM. Investigadores di StepSecurity ha identificato come dannose le versioni 1.14.1 e 0.30.4, pubblicate nelle prime ore del 31 marzo 2026. I pacchetti iniettavano una falsa dipendenza che esegue uno script di installazione in grado di installare un trojan di accesso remoto sulle macchine degli sviluppatori.

L’incidente ha messo in luce il vasto ecosistema di sviluppo che dipende dalla libreria, una delle più scaricate sulla piattaforma con oltre 100 milioni di download settimanali. Gli aggressori non hanno modificato il codice principale di Axios, ma hanno aggiunto una dipendenza nascosta chiamata plain-crypto-js@4.2.1. La dipendenza Essa viene attivata automaticamente durante l’esecuzione di npm install, installando payload specifici per Windows, macOS e Linux.

Come è stato compromesso il conto di manutenzione

I responsabili dell’attacco hanno avuto accesso all’account NPM del principale manutentore del progetto, identificato come Jasonsaayman. Eles ha cambiato l’indirizzo email associato inifstap@proton.mee ha pubblicato manualmente le versioni compromesse, aggirando i flussi di integrazione continua automatizzata del repository su GitHub. La prima versione dannosa, axios@1.14.1, è stata rilasciata intorno alle 00:21 UTC, seguita da axios@0.30.4 circa 39 minuti dopo.

Questo approccio ha consentito di rendere disponibili i pacchetti senza attivare controlli di firma o i consueti processi CI/CD. I manutentori di Axios hanno reagito rapidamente alla scoperta e NPM ha rimosso entrambe le versioni nel giro di poche ore, limitando il tempo di esposizione a circa due o tre ore.

Dettagli tecnici del malware iniettato

La falsa dipendenza plain-crypto-js@4.2.1 non è stata importata in nessun punto del codice Axios originale, servendo esclusivamente per eseguire uno script postinstallazione. Lo script fungeva da dropper trojan di accesso remoto, stabilendo un contatto con un server di comando e controllo per scaricare payload aggiuntivi su misura per ciascun sistema operativo.

Sono state utilizzate tecniche di offuscamento per rendere difficile l’analisi immediata, con comandi decodificati in fase di esecuzione. Após installazione riuscita, il malware ha rimosso le proprie tracce, sostituendo il file package.json con una versione pulita per evitare il rilevamento nelle ispezioni successive della cartella node_modules.

  • Verifica delle versioni interessate con il comando npm list axios filtering 1.14.1 o 0.30.4
  • Verifica della presenza della cartella node_modules/plain-crypto-js come indicatore di compromissione
  • Cerca artefatti come file temporanei in /tmp/ld.py o equivalenti su altri sistemi

Misure di mitigazione consigliate per gli sviluppatori

Gli sviluppatori che hanno installato le versioni 1.14.1 o 0.30.4 dovrebbero considerare l’ambiente compromesso e agire immediatamente. La raccomandazione principale è quella di ripristinare le versioni sicure precedenti: axios@1.14.0 nell’ultimo ramo o axios@0.30.3 nella versione legacy.

È essenziale rimuovere la falsa dipendenza, eseguire un’installazione pulita con il flag –ignore-scripts e ruotare tutte le credenziali sensibili, inclusi token NPM, chiavi SSH, accessi ai servizi cloud e variabili di ambiente. Nelle pipeline di integrazione continua, l’adozione permanente del parametro che ignora gli script post-installazione aiuta a prevenire esecuzioni automatiche indesiderate.

Impatto sull’ecosistema di sviluppo JavaScript

Axios è tra le librerie più utilizzate nell’ecosistema Node.js e nelle applicazioni front-end, essendo una dipendenza diretta o indiretta di numerosi progetti aziendali e open source. L’attacco evidenzia la vulnerabilità intrinseca dei singoli account dei manutentori nei pacchetti molto popolari, anche quando il codice principale rimane intatto.

Gli esperti di sicurezza notano che il metodo utilizzato dimostra sofisticatezza operativa, con la preparazione preventiva della falsa dipendenza in una versione pulita prima di iniettare il payload dannoso. La strategia Essa ha complicato i rilevamenti automatici iniziali e ha aumentato il rischio durante il breve periodo in cui le versioni erano disponibili.

Linee guida per il controllo e la pulizia degli ambienti interessati

I team di sviluppo devono controllare i registri di installazione e la cronologia dei pacchetti per identificare se sono state scaricate versioni dannose. La presenza della cartella plain-crypto-js in node_modules funge da forte indicatore dell’esecuzione del dropper, indipendentemente dalla successiva rimozione del file.

Dopo la pulizia, si consiglia di scansionare completamente i sistemi con strumenti di rilevamento delle minacce e monitorare le connessioni di rete agli indirizzi associati al server di controllo. L’aggiornamento immediato delle politiche di sicurezza nei repository privati ​​aiuta anche a ridurre rischi simili in altri pacchetti.

Prevenire attacchi futuri ai log dei pacchetti

L’incidente rafforza l’importanza di misure come la rigorosa autenticazione a più fattori sugli account di pubblicazione, il monitoraggio continuo delle modifiche ai metadati dei pacchetti e l’adozione di controlli di integrità più robusti. I sistemi open source Projetos con un’elevata adozione potrebbero prendere in considerazione ulteriori processi di revisione prima dei nuovi rilasci.

I singoli sviluppatori e le aziende dovrebbero dare la priorità al blocco delle versioni sicure conosciute nei file di configurazione del progetto, evitando l’installazione automatica degli aggiornamenti senza previa convalida. Le pratiche Essas aiutano a limitare la superficie di attacco nelle catene di fornitura del software.

La comunità della sicurezza continua a monitorare il caso per mappare le possibili vittime e affinare gli strumenti di rilevamento. Até Al momento non ci sono segnalazioni pubbliche di sfruttamento su larga scala, ma la raccomandazione unanime è di considerare qualsiasi installazione delle versioni interessate come una compromissione totale del sistema coinvolto.