Il caso backdoor di xz Utilis: un quasi incidente per la sicurezza informatica globale che utilizza l'attacco alla catena di fornitura

9 aprile 2024 | Miscelanea

Nel mondo della sicurezza informatica, la recente rivelazione di una backdoor che quasi si fonde con l'onnipresente xz Utils, uno strumento di compressione dei dati ampiamente utilizzato nei sistemi Linux e Unix-like, ha inviato onde d'urto nella comunità tecnologica. Le conseguenze potenzialmente catastrofiche di questo evento mancato sottolineano l’importanza della vigilanza e della trasparenza nello sviluppo di software open source.

Cos'è xz Utilis?

xz Utils è un insieme di utilità di compressione dati open source progettate per sistemi operativi simili a Unix, in particolare Linux. Fornisce una compressione senza perdita di dati, il che significa che i dati possono essere compressi e decompressi senza alcuna perdita di informazioni.

Fondamentalmente, xz Utils ruota principalmente attorno al formato xz, noto per il suo elevato rapporto di compressione e l'uso efficiente delle risorse di sistema. Viene comunemente utilizzato per comprimere file o archivi di grandi dimensioni, rendendolo uno strumento essenziale per la distribuzione del software, i backup di sistema e l'archiviazione dei dati.

Oltre al formato xz, xz Utils supporta anche il formato legacy .lzma, che era il suo predecessore. Questa compatibilità con le versioni precedenti garantisce che i sistemi e i software più vecchi possano ancora interagire con i file compressi utilizzando xz Utils.

Nel complesso, xz Utils è un componente cruciale dei sistemi simili a Unix, fornendo funzionalità di compressione dei dati efficienti e affidabili essenziali per varie attività informatiche come i servizi SSH (Secure Shell).

Cos'è SSH?

SSH, che sta per Secure Shell, è un protocollo di rete crittografico utilizzato per comunicazioni sicure su una rete non sicura. Consente agli utenti di accedere e gestire in modo sicuro sistemi e dispositivi remoti su una rete, come Internet. SSH fornisce un'alternativa sicura ai protocolli tradizionali come Telnet, che trasmettono dati in chiaro, rendendoli suscettibili di intercettazione e accesso non autorizzato.

Ecco alcune caratteristiche e funzioni chiave di SSH:

Accesso remoto sicuro: SSH consente agli utenti di accedere in modo sicuro ai sistemi remoti ed eseguire comandi in remoto su tali sistemi. Viene comunemente utilizzato dagli amministratori di sistema per gestire server e dispositivi di rete.

Crittografia dei dati: SSH crittografa tutti i dati trasmessi tra il client e il server, inclusi nomi utente, password e comandi, utilizzando algoritmi crittografici. Ciò garantisce che le informazioni sensibili rimangano riservate e non possano essere intercettate dagli aggressori.

Autenticazione: SSH supporta vari metodi di autenticazione, inclusa l'autenticazione basata su password, l'autenticazione con chiave pubblica e l'autenticazione interattiva da tastiera. L'autenticazione con chiave pubblica è considerata più sicura ed è spesso preferita per processi automatizzati e accesso sicuro senza la necessità di password.

Port Forwarding: SSH supporta il port forwarding, consentendo agli utenti di effettuare il tunneling sicuro delle connessioni di rete tra sistemi locali e remoti. Questa funzionalità è utile per accedere in modo sicuro ai servizi in esecuzione su sistemi remoti o per aggirare le restrizioni del firewall.

Trasferimento file sicuro: SSH include utilità come SCP (Secure Copy) e SFTP (SSH File Transfer Protocol) per il trasferimento sicuro di file tra sistemi. Queste utilità crittografano i trasferimenti di file e forniscono l'autenticazione per garantire l'integrità e la riservatezza dei dati.

SSH è uno strumento fondamentale per accedere e gestire in modo sicuro i sistemi remoti, fornendo crittografia, autenticazione e altre funzionalità di sicurezza per proteggere le informazioni sensibili e garantire comunicazioni sicure sulle reti.

Scoprire la backdoor di xz Utils

La scoperta della backdoor è stata a dir poco un colpo di fortuna, portato alla luce da Andres Freund, uno sviluppatore che lavora sulle offerte PostgreSQL di Microsoft. Durante la risoluzione dei problemi di prestazioni su un sistema Debian, Freund ha notato comportamenti anomali negli accessi SSH (Secure Shell), riconducendo infine il problema ad aggiornamenti dannosi all'interno di xz Utils.

Dopo un esame più attento, è stato rivelato che le versioni 5.6.0 e 5.6.1 di xz Utils contenevano una backdoor che manometteva l'eseguibile SSH, consentendo potenzialmente ad autori malintenzionati di eseguire codice arbitrario su sistemi compromessi.

La cronologia della backdoor

La cronologia degli eventi che hanno portato a questa rivelazione dipinge un quadro inquietante di infiltrazione deliberata nei progetti open source. Sembra che un utente identificato come JiaT75 ha avviato sottili cambiamenti nei progetti open source, guadagnando gradualmente credibilità all'interno della comunità. Questi cambiamenti sono culminati nell’inserimento di una backdoor in xz Utils, sfruttando la fiducia e la collaborazione inerenti allo sviluppo open source.

2021:
Attività iniziale di JiaT75. Nel 2021, un utente con il nome utente JiaT75 ha effettuato il suo primo impegno noto in un progetto open source. Una modifica notevole è stata apportata al progetto libarchive, sostituendo il file safe_fprint funzionare con una variante meno sicura. All'epoca questo cambiamento passò inosservato.

2022:
Introduzione a xz Utilis. JiaT75 ha presentato una patch sulla mailing list xz Utils, indicando il coinvolgimento nello sviluppo di xz Utils. Poco dopo, un partecipante mai visto prima di nome Jigar Kumar si è unito alle discussioni, esprimendo insoddisfazione per il mantenimento del progetto.

Pressione per il cambiamento. Kumar, insieme a sostenitori come Dennis Ens e altri nuovi nella mailing list, hanno fatto pressioni su Lasse Collin, il manutentore di lunga data di xz Utils, affinché coinvolgesse ulteriori sviluppatori per mantenere il progetto. Questa pressione potenzialmente ha aperto la strada a ulteriori infiltrazioni.

Gennaio 2023:
Coinvolgimento attivo: JiaT75, che ora usa il nome Jia Tan, ha fatto il suo primo impegno con xz Utils. Nei mesi successivi, Tan fu sempre più coinvolto negli affari di xz Utils, intraprendendo azioni come sostituire le informazioni di contatto di Collin con le proprie su oss-fuzz, un progetto per la scansione delle vulnerabilità del software open source.

Febbraio 2024:
Implementazione della backdoor: Tan ha rilasciato dei commit per le versioni 5.6.0 e 5.6.1 di xz Utils, che includevano l'implementazione della backdoor. Inizialmente questi aggiornamenti passavano in gran parte inosservati, poiché la backdoor funzionava in modo discreto all’interno del software.

Appelli all'integrazione: in seguito all'implementazione della backdoor, Tan e i suoi complici hanno lanciato un appello agli sviluppatori delle principali distribuzioni Linux, tra cui Ubuntu, Red Hat e Debian, affinché uniscano gli aggiornamenti nei loro sistemi operativi. Uno degli aggiornamenti alla fine è arrivato nei rilasci delle distribuzioni Debian e Red Hat.

Scoperta della backdoor:

L'indagine di Andres Freund: la backdoor è stata portata alla luce da Andres Freund, uno sviluppatore che lavora sulle offerte PostgreSQL di Microsoft. Freund ha notato un comportamento anomalo negli accessi SSH su un sistema Debian e ha fatto risalire il problema agli aggiornamenti all'interno di xz Utils.

Rivelazione sulla lista di sicurezza Open Source: Venerdì, Freund ha rivelato la presenza della backdoor sulla lista di sicurezza Open Source, esponendo l'installazione intenzionale della backdoor in xz Utils.

Post-scoperta:

Analisi e mitigazione: ricercatori e sviluppatori di sicurezza hanno lavorato diligentemente per analizzare gli aggiornamenti dannosi e sviluppare strumenti per rilevare e mitigare potenziali istanze di backdoor. Per affrontare la minaccia sono stati impiegati vari strumenti e metodi, tra cui l’analisi comportamentale e il reverse engineering.

La sequenza temporale evidenzia la graduale infiltrazione e manipolazione di un progetto open source, che ha portato all’implementazione quasi riuscita di una backdoor in un’utilità software ampiamente utilizzata, sottolineando l’importanza della vigilanza e del controllo nei processi di sviluppo e manutenzione del software.

Comprendere la backdoor

La sofisticatezza della backdoor risiede nella sua capacità di eludere il rilevamento ed eseguire con precisione payload dannosi. Manipolando l'eseguibile SSH tramite xz Utils, gli aggressori potrebbero potenzialmente compromettere sistemi sensibili ed esfiltrare dati critici.

Mitigare la minaccia

In seguito a questa scoperta, la comunità della sicurezza informatica si è mobilitata per valutare e mitigare la minaccia rappresentata dalla backdoor. Strumenti come Binarmente e xzbot sono emersi per aiutare a rilevare e analizzare potenziali istanze di backdoor.

Il ruolo di Valgrind

Valgrind, un'utilità per il monitoraggio della memoria del computer, ha svolto un ruolo cruciale nello scoprire gli aggiornamenti dannosi all'interno di xz Utils. Identificando anomalie nell'utilizzo della CPU e nelle operazioni di memoria, gli sviluppatori sono stati in grado di individuare l'origine del problema e prevenire uno sfruttamento diffuso. Valgrind è una suite di strumenti di programmazione open source progettata per il debug e la profilazione di applicazioni. Fornisce una gamma di strumenti che aiutano gli sviluppatori a identificare perdite di memoria, rilevare errori di memoria, profilare l'utilizzo della memoria e analizzare l'esecuzione dei programmi. Alcune caratteristiche e componenti chiave di Valgrind:

Rilevamento errori di memoria: Valgrind include strumenti come Memcheck, che rileva vari errori relativi alla memoria nei programmi, tra cui perdite di memoria, accesso non valido alla memoria (come lettura o scrittura su memoria non inizializzata) e cattiva gestione dell'allocazione dinamica della memoria (ad esempio, liberazione di memoria che ha già stato liberato).

Rilevamento errori thread: Lo strumento ThreadSanitizer (TSan) di Valgrind rileva corse di dati e altri errori di threading nei programmi multi-thread. Aiuta a identificare i bug di concorrenza che possono portare a comportamenti imprevedibili e problemi difficili da eseguire il debug.

profiling: Valgrind fornisce strumenti di profilazione come Callgrind e Cachegrind, che aiutano ad analizzare le prestazioni del programma misurando le frequenze delle chiamate di funzione, l'utilizzo della cache e il tempo di esecuzione. Questi strumenti aiutano gli sviluppatori a identificare i colli di bottiglia e a ottimizzare le prestazioni delle loro applicazioni.

Analisi dell'esecuzione del programma: Gli strumenti di Valgrind possono anche tracciare l'esecuzione dei programmi a livello di istruzione, consentendo agli sviluppatori di analizzare in dettaglio il comportamento del programma. Ciò può essere utile per comprendere il flusso del programma, identificare i colli di bottiglia nelle prestazioni e diagnosticare bug difficili da trovare.

Supporto della piattaforma: Valgrind viene utilizzato principalmente su sistemi operativi simili a Unix, incluse le varianti Linux, macOS e BSD. Supporta un'ampia gamma di linguaggi di programmazione e compilatori, inclusi C, C++ e Fortran, e può essere integrato in vari ambienti di sviluppo e sistemi di compilazione.

Impatto nel panorama dei fornitori

La scoperta della backdoor in xz Utils ha avuto ripercussioni in tutto il panorama dei fornitori, suscitando preoccupazioni significative e misure proattive tra i fornitori di software. Data la diffusa integrazione di xz Utils in varie distribuzioni Linux, le potenziali implicazioni dell'infiltrazione di backdoor sono di vasta portata. I fornitori hanno ora il compito di rivalutare le loro catene di fornitura di software, esaminare attentamente le dipendenze e rafforzare le loro pipeline di sviluppo e distribuzione contro minacce simili. L’incidente sottolinea l’importanza fondamentale della trasparenza, dei processi di revisione del codice e dei controlli di sicurezza nello sviluppo di software open source. Inoltre, serve a ricordare fortemente la necessità di vigilanza e collaborazione continue all’interno della comunità del software per salvaguardarsi da soggetti malintenzionati che cercano di sfruttare le vulnerabilità nei componenti software ampiamente utilizzati. I fornitori si trovano ora ad affrontare la sfida di ripristinare la fiducia tra gli utenti, implementare rigorosi protocolli di sicurezza e promuovere una cultura di responsabilità per mitigare i rischi posti da tali vulnerabilità in futuro.

RELIANOID Load Balancer sono stati forniti aggiornamenti e la backdoor non è stata influenzata nelle nostre soluzioni. Contatta gli esperti per maggiori informazioni.

Goditi l'esperienza di affidabilità del sito!

Blog correlati

Inserito da reluser | 09 giugno 2026
Con l'accelerazione delle iniziative di trasformazione digitale da parte delle organizzazioni, la relazione tra sicurezza informatica, distribuzione delle applicazioni e resilienza delle infrastrutture è diventata più interconnessa che mai. La rapida adozione dell'IA, l'aumento delle API...
49 PiaceCommenti disabilitati Rapporto sul mercato ADC e Cybersecurity del 2026: le tendenze che stanno ridefinendo la distribuzione e la sicurezza delle applicazioni.
Inserito da reluser | 28 maggio 2026
Il panorama digitale si evolve rapidamente e le aziende devono garantire che i loro siti web e le loro applicazioni offrano prestazioni impeccabili. Uno dei modi più efficaci per raggiungere questo obiettivo è attraverso l'ottimizzazione del carico…
298 PiaceCommenti disabilitati Comprendere il bilanciamento del carico: ottimizzazione delle prestazioni e dell'affidabilità
Inserito da reluser | 25 maggio 2026
Esempi di applicazioni IT nell'economia blu Proprio come Amadeus ha trasformato il settore aeronautico con le piattaforme digitali, l'economia blu sta vivendo un'ondata di innovazione digitale. Di seguito ne elenchiamo alcune…
353 PiaceCommenti disabilitati sulle applicazioni IT dell'economia blu: dai porti intelligenti al monitoraggio della pesca e come RELIANOID Affidabilità e sicurezza delle energie