Venerdì 29 marzo il mondo dell’informatica ha scoperto di essersi trovato a un passo da un vero e proprio disastro. Quello che ormai viene considerato l’affaire XZ, infatti, aveva tutte le carte in regola per travolgere l’intero ecosistema tecnologico.
La scoperta è stata fatta da Andres Freund, software engineer di Microsoft, che la scorsa settimana ha segnalato la presenza di una backdoor all’interno di liblzma, una libreria per la compressione dei dati compresa nel pacchetto XZ Utils. Si tratta di software Open Source, utilizzato in numerose distro Linux e in macOS. Attraverso la backdoor sarebbe stato possibile avviare l’esecuzione di codice in remoto su qualsiasi macchina avesse implementato la nuova versione della libreria. In altre parole: si sarebbero aperte le porte a un attacco su scala globale con conseguenze inimmaginabili.
Attacco di stato
Senza andare ad approfondire gli aspetti tecnici (che sono però particolarmente “succosi” e piuttosto facilmente reperibili online), Freund si è trovato davanti a un componente malevolo estremamente complesso. Qualcosa, che a detta degli esperti di cyber security, è probabilmente frutto dello sforzo di un gruppo APT (Advanced Persistent Threat) collegato a qualche ente governativo.
Non è di certo la prima volta che ci troviamo di fronte a qualcosa di simile, ma la peculiarità del caso xz è legato alle modalità con cui i pirati informatici hanno cercato di preparare il campo a un attacco senza precedenti.
A finire nel mirino è stato il processo legato allo sviluppo dei componenti open source, che prevede il contributo volontario per la creazione e la manutenzione del software. Nel caso specifico, la ricostruzione dei fatti è estremamente semplice: uno sviluppatore si è “infiltrato” nel progetto contribuendo per due anni in modo ineccepibile. Solo dopo essersi guadagnato la fiducia della community, ha sottoposto un aggiornamento contenente la backdoor.
L’identità dello sviluppatore è sconosciuta. All’interno del progetto si firma come “Jia Tan” (JiaT75), ma è inutile sperare che questo nome possa rappresentare un indizio utile per scoprire chi sia l’autore della backdoor. Anche l’apparente nazionalità cinese, infatti, potrebbe essere una “false flag” usata per dirottare le indagini.
Gioie e dolori dell’Open Source
La vicenda xz accende i riflettori su alcuni degli annosi problemi dell’open source. Molti progetti, infatti, sono gestiti da volontari che non ricevono alcun compenso per il loro lavoro. Si tratta, in pratica, di un’attività “hobbistica” che non ha, ovviamente, alcun elemento intrinseco di continuità. In molti casi, però, a fronte di questa “leggerezza” nella gestione dei componenti software open source, corrisponde un utilizzo che di hobbistico ha ben poco. Molti pacchetti software vengono utilizzati in prodotti commerciali, spesso all’interno di ecosistemi infrastrutturali di grande importanza.
Il secondo elemento riguarda (e il caso xz è esemplificativo) il rischio che tra i contributori ci siano persone non adeguate al ruolo o, come nel caso specifico, addirittura animate da un intento malevolo. Qualcosa che in un ambito “commerciale” può accadere decisamente con meno facilità.
L’affaire xz, però, fa emergere anche i punti di forza della filosofia Open Source. Se la backdoor è stata individuata tempestivamente, lo si deve infatti proprio alle logiche di trasparenza che sottintendono i progetti “aperti”. L’intervento di Andres Freund, infatti, è arrivato quando la libreria non era ancora stata implementata e distribuita. Se un attacco del genere avesse preso di mira un componente software “chiuso” (e l’azione avesse avuto successo) le probabilità di individuare la backdoor sarebbero state decisamente più basse.
Per il futuro, però, sarebbe opportuno andare a sciogliere quei nodi che ancora oggi indeboliscono il mondo dell’Open Source. Il caso xz potrebbe (e dovrebbe) rappresentare la spinta decisiva per affrontare i problemi e cercare un modo per risolverli una volta per sempre. Non possiamo sperare che ci sia sempre un Andres Freund pronto a salvarci.