Il nuovo worm ChainDrop ha colpito oltre 400 pacchetti NPM


1

Registrato un attacco di massa sui pacchetti nel repository NPM, condotto utilizzando un nuovo worm auto-replicante ChainDrop, che inserisce malware nelle dipendenze. A seguito dell'attacco, sono stati pubblicati 2212 rilasci malevoli per 444 pacchetti. I pacchetti compromessi più popolari, keyv, flat-cache e file-entry-cache, hanno registrato rispettivamente 154, 149,9 e 147,6 milioni di download a settimana.

Il caricatore del worm era presente nei file setup.mjs e Math_Symbol.js, che venivano eseguiti tramite un gestore preinstallazione ("preinstall": "node setup.mjs"), attivato durante l'installazione del pacchetto compromesso. Gli script indicati scaricavano il runtime legittimo di Bun e il codice offuscato del worm, della dimensione di 710 kB. Una volta attivato, il worm cercava nel sistema e nelle variabili d'ambiente i token per NPM, PyPI, CircleCI, AWS, GCP, Docker, Azure, HashiCorp, KubernetesK8s e altri servizi (analizzando più di 140 percorsi di file, tipo ~/.npmrc), oltre ad esaminare la memoria (attraverso /proc//mem) dell'ambiente di GitHub Actions in cerca di token e credenziali.

In caso di rilevamento di un token per connettersi al repository NPM, il worm pubblicava automaticamente nuovi rilasci malevoli per i pacchetti in fase di sviluppo nell'attuale ambiente, compromettendo l'albero delle dipendenze. A differenza del worm precedentemente scoperto Shai-Hulud 2.0 , in ChainDrop è stata implementata la tecnica EtherHiding per ricevere comandi di gestione attraverso la blockchain pubblica di Ethereum, utilizzando la crittografia per nascondere i dati riservati trasmessi al server degli attaccanti e garantendo l'inserimento nei file di configurazione di Claude Code, VS Code e GitHub Copilot per consolidare la propria presenza nel sistema.

L'attacco è iniziato con la compromissione del processo di creazione dei rilasci sulla base di GitHub Actions per il pacchetto keyv, che ha registrato 154 milioni di download a settimana ed è utilizzato come dipendenza in 1703 pacchetti. Gli attaccanti hanno creato una nuova versione 6.0.0, inserendo codice malevolo al suo interno, e l'hanno pubblicata utilizzando il meccanismo “Trusted Publishers” e una corretta certificazione SLSA. Dopo la pubblicazione, il worm ha compromesso molti pacchetti dipendenti da keyv e, a catena, ha iniziato a colpire le dipendenze indirette.

Tra i pacchetti più popolari compromessi dal worm, che ha pubblicato per loro rilasci malevoli, si trovano:

  • flat-cache 6.1.24 (149,8 milioni di download a settimana);
  • file-entry-cache 11.1.6 (147,5 milioni);
  • cacheable-request 13.0.20 (33,9 milioni);
  • @cacheable/utils 2.5.1 (8,7 milioni);
  • cacheable 2.5.1 (7,8 milioni);
  • @cacheable/memory 2.2.1 (7,1 milioni);
  • cache-manager 7.2.10 (4,2 milioni);
  • @cacheable/node-cache 3.1.2 (1,5 milioni).

Fonte: linux.org.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster