Un pacchetto JavaScript scaricato 3 milioni di volte al mese è stato infettato da malware che ruba credenziali cloud, chiavi SSH e token AI. Ecco cosa è successo e come proteggersi.

node-ipc compromesso: tre milioni di sviluppatori a rischio

Un pacchetto npm molto diffuso nella comunità JavaScript è stato infettato da malware sofisticato. node-ipc, scaricato circa 3 milioni di volte al mese, ha ricevuto tre aggiornamenti malevoli che rubano credenziali cloud, chiavi SSH, token per servizi AI e dati sensibili dai computer degli sviluppatori. L'attacco sfrutta uno dei principi fondamentali dello sviluppo moderno: la fiducia nella catena di fornitura del software, dove gli aggiornamenti automatici vengono installati senza revisione manuale.

Chi

node-ipc è un modulo Node.js per la comunicazione tra processi locali e remoti, utilizzato in progetti che vanno dalle applicazioni desktop ai framework web come Vue.js. Il pacchetto conta circa 761.000 utenti in produzione secondo GitHub. Non è la prima volta che viene compromesso: nel 2022 subì un attacco simile durante la campagna "protestware" (catalogato come CVE-2022-23812), quando il suo autore originale, Brandon Nozaki-Miller, inserì codice che sovrascriveva file sui computer con indirizzi IP russi e bielorussi, scatenando una reazione pubblica violenta e molestie nei suoi confronti.

Cosa è successo

Tre versioni del pacchetto sono state contaminate: 9.1.6, 9.2.3 e 12.0.1. Secondo OX Security e StepSecurity, il malware è stato pubblicato da un account npm chiamato "atiertant" che compare nella lista dei manutentori ma non ha alcuna connessione con l'autore originale. L'ultimo aggiornamento legittimo risaliva ad agosto 2024: il gap di 21 mesi suggerisce che le credenziali dell'account siano state compromesse o che sia stato aggiunto come manutentore appositamente per questo scopo.

Il codice malevolo è inserito nel file node-ipc.cjs in forma offuscata. Una volta eseguito, il malware raccoglie e ruba:

  • Credenziali cloud (AWS, Google Cloud, Microsoft Azure)
  • Chiavi SSH e token Kubernetes
  • Sessioni di servizi AI (Claude Code, Kiro IDE)
  • Cookie e dati di sessione da browser (Firefox) e applicazioni (Microsoft Teams, FileZilla)
  • File di configurazione da Docker, Terraform e Kubernetes
  • Cronologia shell e password di database

In totale, il malware prende di mira 90 categorie diverse di credenziali. I dati rubati vengono compressi in un archivio GZIP e inviati a un server di comando e controllo esterno (C2) tramite il dominio "sh.azurestaticprovider[.]net". L'analisi tecnica rivela che il malware è specificamente ottimizzato per macOS, cercando file nella directory ~/Library dove le applicazioni memorizzano dati sensibili.

A differenza di attacchi precedenti, questo non sfrutta hook del ciclo di vita npm (come preinstall o postinstall), ma viene attivato semplicemente quando il pacchetto viene importato a runtime.

Perché è importante

Questa compromissione rappresenta un attacco alla catena di fornitura del software su scala industriale. node-ipc non è una libreria marginale: è usato in progetti di migliaia di aziende e sviluppatori. Chiunque abbia installato una delle versioni malevole negli ultimi giorni ha potenzialmente esposto credenziali critiche.

L'impatto è particolarmente grave perché colpisce gli sviluppatori, non gli utenti finali. Le credenziali rubate permettono agli attaccanti di accedere direttamente a infrastrutture cloud, repository privati, ambienti di produzione e servizi AI. Un singolo sviluppatore compromesso può diventare il punto di ingresso per attaccare l'intera organizzazione.

Questo è il secondo incidente significativo di node-ipc in tre anni. Nel 2022, l'attacco precedente (anche se con intenti diversi) costrinse la comunità open source a riflettere su come proteggere i pacchetti ad alto download. Oggi, nonostante le lezioni apprese, il problema persiste: anche pacchetti molto diffusi possono essere compromessi se le credenziali dei manutentori vengono rubate o se account vengono aggiunti senza controllo adeguato.

La situazione mette in luce una vulnerabilità strutturale: npm ha circa 2 milioni di pacchetti, ma la sicurezza dipende dalla vigilanza dei singoli manutentori e dalla fiducia nel sistema. Non esiste un meccanismo automatico che blocchi la pubblicazione di codice sospetto prima che raggiunga milioni di utenti.

Cosa aspettarsi

Azioni immediate per gli sviluppatori:

  • Verificare se node-ipc è una dipendenza diretta o indiretta dei vostri progetti
  • Controllare il file package-lock.json o yarn.lock per le versioni 9.1.6, 9.2.3 e 12.0.1
  • Downgrade alla versione 12.0.0 o precedenti (verificate la compatibilità)
  • Revocare immediatamente tutte le chiavi SSH, token cloud e credenziali API dal computer interessato
  • Abilitare l'autenticazione a due fattori su tutti gli account sensibili
  • Considerare il computer come potenzialmente compromesso fino a una revisione completa

Indicatori da osservare:

Npm ha probabilmente già rimosso le versioni malevole dal registro pubblico. Monitorate gli annunci ufficiali di npm Security e della comunità Node.js per conferme e patch. StepSecurity e Socket continueranno a fornire analisi tecniche dettagliate. Aspettatevi che altri strumenti di sicurezza (Snyk, Dependabot, GitHub) aggiungano rilevamenti automatici per queste versioni nei vostri repository.

Una domanda tecnica aperta rimane: come è stato possibile che un account senza cronologia di pubblicazioni precedenti potesse pubblicare versioni di un pacchetto così critico? Questo potrebbe spingere npm verso controlli più rigorosi per i manutentori inattivi o per l'aggiunta di nuovi maintainer a progetti ad alto download.

Nel frattempo, la comunità open source dovrà affrontare ancora una volta il dilemma tra accessibilità e sicurezza: come mantenere l'ecosistema aperto e collaborativo senza esporre milioni di sviluppatori a rischi di questo tipo.

📰 Fonti

  1. Tom's Hardware ITnode-ipc compromesso: il malware punta agli sviluppatori
  2. tomshw.itnode-ipc compromesso: il malware punta agli sviluppatori
  3. binance.comNode-ipc Affronta un Altro Breach di Sicurezza con Versioni Malevole ...
  4. ox.securitynode-ipc npm Package Breached, Spreading Infostealer Malware
  5. redhotcyber.comLo sviluppatore del malware di Node-ipc è stato molestato
  6. thehackernews.comStealer Backdoor Found in 3 Node-IPC Versions Targeting ...