
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:
- https://github.com/chalk/chalk/issues/656
- https://github.com/debug-js/debug/issues/1005#issuecomment-3…
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.
Lascia un commento