Debug ed altri pacchetti NPM, scaricati due miliardi di volte a settimana, sono stati compromessi

Facendo una ricerca a ritroso sulle news pubblicate sul portale utilizzando la chiave di ricerca “NPM” non si scappa: ogni volta che abbiamo parlato di questi pacchetti è sempre stato per via della sicurezza… Violata.

NPM (Node Package Manager) è l’ecosistema di riferimento per la gestione dei pacchetti JavaScript e Node.js: consente di installare, condividere e aggiornare librerie in modo rapido. La sua forza, ovvero la possibilità di comporre applicazioni sfruttando migliaia di pacchetti open-source, è anche la sua debolezza: ogni progetto può includere centinaia di dipendenze dirette e indirette, rendendo quasi impossibile un controllo puntuale.

Questo effetto “a cascata” espone a vulnerabilità e supply chain attack, perché un singolo pacchetto compromesso può propagarsi in modo massivo a interi ecosistemi software.

L’8 settembre, su Hacker News (https://news.ycombinator.com) è apparso un messaggio dall’eloquente titolo “NPM debug and chalk packages compromised“, il cui primo commento è stato proprio della vittima della compromissione, Josh Junon (nome in codice qix), il quale senza giri di parole ha dichiarato:

Hi, yep I got pwned. Sorry everyone, very embarrassing.

Salve, sì, sono stato fregato. Mi dispiace, è veramente imbarazzante.

Facendo immediatamente seguire i link di tracciamento delle problematiche le quali, è corretto ricordarlo, sono già state risolte:

Il problema è che la lista dei pacchetti affetti è davvero spaventosa:

  • ansi-styles@6.2.2
  • debug@4.4.2  
  • chalk@5.6.1
  • supports-color@10.2.1
  • strip-ansi@7.1.1
  • ansi-regex@6.2.1
  • wrap-ansi@9.0.1
  • color-convert@3.1.1
  • color-name@2.0.1
  • is-arrayish@0.3.3
  • slice-ansi@7.1.1
  • color@5.0.1
  • color-string@2.1.1
  • simple-swizzle@0.2.3
  • supports-hyperlinks@4.1.1
  • has-ansi@6.0.1
  • chalk-template@1.1.1
  • backslash@0.2.1

Anche a un occhio non esperto alcuni nomi sono universalmente riconosciuti come molto utilizzati (debug su tutti) e, come indica BleepingComputer, la somma dei download settimanali che questi collezionano raggiunge i due miliardi.

Tantini, eh?

Inquietante è stata anche la modalità di attacco, poiché lo sviluppatore – non certo uno sprovveduto ed estremamente onesto e chiaro nel descrivere la situazione – ha raccontato com’è avvenuto il furto della sua identità (specificando come ancora non sia riuscito a ottenere nuovamente il controllo del suo account NPM):

NPM has yet to get back to me. My NPM account is entirely unreachable; forgot password system does not work. I have no recourse right now but to wait.

Email came from support at npmjs dot help.

Looked legitimate at first glance. Not making excuses, just had a long week and a panicky morning and was just trying to knock something off my list of to-dos. Made the mistake of clicking the link instead of going directly to the site like I normally would (since I was mobile).

NPM non mi ha ancora risposto. Il mio account NPM è completamente irraggiungibile; il sistema per il recupero della password non funziona. Al momento non ho altra scelta che aspettare.

L’email proveniva da support at npmjs dot help.

Sembrava legittima a prima vista. Non sto cercando scuse, ma è stata una settimana pesante e una mattinata frenetica, e stavo solo cercando di spuntare una cosa dalla lista di cose da fare. Ho commesso l’errore di cliccare sul link invece di andare direttamente al sito come faccio di solito (dato che ero da mobile).

E questo racconto andrebbe analizzato a fondo per comprendere come nessuno sia al sicuro quando si tratta di attacchi di questo tipo, in particolare è facile – nella frenesia quotidiana delle mille cose da fare – farsi confondere da un mittente che sembra lecito.

Molti complimenti per l’onestà, quindi, ed una nuova lezione imparata.

Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.

8 risposte a “Debug ed altri pacchetti NPM, scaricati due miliardi di volte a settimana, sono stati compromessi”

  1. Avatar sabayonino
    sabayonino

    Siamo umani.
    Ci aiuterà l'IA 😀

  2. Avatar Nicodemo Timoteo Taddeo
    Nicodemo Timoteo Taddeo

    🙂
    Ad estinguerci prima?

  3. Avatar Nicodemo Timoteo Taddeo
    Nicodemo Timoteo Taddeo

    E questo racconto andrebbe analizzato a fondo per comprendere come nessuno sia al sicuro quando si tratta di attacchi di questo tipo"

    Ho smesso da tempo di guardare e considerare con sufficienza quando non deridere apertamente qualcuno che viene fregato da phishing o modalità di truffe e attacchi analoghe. Purtroppo può capitare a tutti, la vita ci impone troppo stress e impegno per poter essere vigili ed attenti continuamente 24/24. Un momento di debolezza e sei fregato, chiunque tu sia…

  4. Avatar Raoul Scarazzini

    Quello che scrivi si riassume in una parola: empatia.

  5. Avatar JustATiredMan
    JustATiredMan

    purtroppo è vero, per quanto scafati, basta avere la giornata in cui si è stanchi per qualcosa, ed è proprio quel giorno che presti un po meno d'attenzione e resti fregato.

  6. Avatar JustATiredMan
    JustATiredMan

    speriamo…

  7. Avatar Hidden_user
    Hidden_user

    Aiuta anche nel phishing

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *