Il software open source corrotto entra nel campo di battaglia russo

  • Sep 04, 2023

Un programmatore dietro il popolare programma open source npm node-ipc lo ha avvelenato con un malware che cancellava i dischi rigidi dei computer situati in Russia o Bielorussia.

È iniziata come una protesta innocente. Npm, il manutentore del gestore pacchetti JavaScript RIAEvangelist, Brandon Nozaki Miller, ha scritto e pubblicato un pacchetto di codice sorgente npm a codice aperto chiamato peacenotwar. Non ha fatto altro che aggiungere un messaggio di protesta contro l'invasione russa dell'Ucraina. Ma poi ha preso una svolta più oscura: ha iniziato a distruggere i file system dei computer.

Crisi Ucraina

  • Codificazione all'interno di una zona di guerra
  • Come puoi aiutare: siti e risorse per le donazioni
  • La polizia ucraina sgomina una banda di phishing dietro una truffa sui pagamenti
  • Il progetto internazionale di assistenza ai rifugiati collabora con Rosetta Stone per aiutare i rifugiati

Per essere precisi, Miller ha aggiunto il codice che lo avrebbe fatto eliminare il file system di qualsiasi computer con un indirizzo IP russo o bielorusso.

Quindi, il suo manutentore ha aggiunto il modulo come dipendenza alla modalità estremamente popolare node-ipc. Node-ipc, a sua volta, è una dipendenza popolare utilizzata da molti programmatori JavaScript. E da fastidioso è diventato un distruttore di sistema.

Il codice ha subito diverse modifiche dalla sua prima apparizione, ma è da considerarsi altamente pericoloso. Sottolineandone il potenziale danno, Miller ha codificato le modifiche al codice in base 64 per rendere più difficile individuare il problema semplicemente leggendo il codice.

Secondo la società di sicurezza dello sviluppatore Snyk, che ha scoperto il problema, "node-ipc (versioni >=10.1.1 <10.1.3) è un pacchetto dannoso. Questo pacchetto contiene codice dannoso che prende di mira gli utenti con IP situato in Russia o Bielorussia e sovrascrive i loro file con un'emoji a forma di cuore." Ora viene monitorato come CVE-2022-23812. Synk attribuisce a questo pacchetto open-up corrotto in grado di eseguire il source una valutazione critica del Common Vulnerability Scoring System (CVSS) di 9,8, critico.

In altre parole, semplicemente non dovresti usarlo affatto. Periodo.

È più facile dirlo che farlo. Node-ipc è presente in molti programmi. Questo modulo nodejs viene utilizzato per la comunicazione InterProcess (IPC) locale e remota su sistemi Linux, Mac e Windows. Viene utilizzato anche in modo molto popolare vista-cli, un framework Javascript per la creazione di interfacce utente basate sul web. Da lì, questo malware ha distrutto un gran numero di sistemi.

Liran Tal, il ricercatore di Snyk che ha scoperto il problema, ha detto: "Anche se l'atto deliberato e pericoloso del manutentore RIAEvangelist sarà percepito da alcuni come un atto legittimo di protesta, in che modo ciò si riflette sulla reputazione futura del manutentore e sul suo interesse nella comunità degli sviluppatori?" Si potrebbe mai più fidarsi di questo manutentore per non dare seguito ad atti futuri in azioni simili o anche più aggressive per qualsiasi progetto? partecipare a?"

Lo stesso Miller ha difeso il suo modulo peacenotwar su GitHub, dicendo "Tutto questo è pubblico, documentato, concesso in licenza e open source.

Ma cosa succederebbe se qualcuno lo facesse e non lasciasse un messaggio del genere? E, se era importante consentire agli utenti di prendere una decisione informata, perché il codice pericoloso è stato oscurato?

In ogni caso, come tutti sappiamo, le persone sono pessime nel leggere la documentazione. Inoltre, come Sophos Ricercatore senior sulle minacce. Sean Gallagher, ha twittato, chiunque abbia appena aggiunto codice, volenti o nolenti, ai propri sistemi di produzione è in cerca di guai. "Se stai applicando patch in tempo reale a dipendenze per le quali non hai controlli QA, non stai affatto facendo SecOps."

Detto questo, però, questo "protestware" costituisce un pericoloso precedente. Come ha scritto un programmatore su GitHub: "Ciò che accadrà è che i team di sicurezza delle aziende occidentali che non hanno assolutamente nulla a che fare con la Russia o con la politica inizieranno a vedere software libero e open source come via per attacchi alla catena di fornitura (che questo è assolutamente) e iniziano semplicemente a vietare il software libero e open source - tutto il software libero e open source - all'interno delle loro aziende. O almeno tutto ciò che è mantenuto dalla comunità. Ciò non avrà alcun effetto positivo per gli ucraini, idiota, e danneggerà solo l’adozione del FOSS [software libero e open source]." Esattamente così.

Nel frattempo, nel modo consueto dell'open source di risolvere i propri problemi, un altro sviluppatore Tyler S. Resch, MidSpike, ha avviato un sforzo per costruire un fork nodo-ipc sicuro su GitHub.

Storie correlate:

  • Gli autori di malware prendono di mira i rivali con pacchetti npm dannosi
  • Quando gli sviluppatori open source vanno male
  • Protezione dell'ecosistema open source: le SBOM non sono più opzionali