Een ernstige beveiligingsfout in de XZ-compressietool voor Linux, bekend als CVE-2024-3094, heeft kwaadaardige code toegevoegd aan versies 5.6.0 en 5.6.1 van de XZ Utils-bibliotheek. Deze is terecht gekomen in veelgebruikte Linux-distributies, waaronder die van Red Hat en Debian.
In de tarballs (gecomprimeerd archiefbestand gebruikt voor o.a. Linux) van versie 5.6.0 en 5.6.1 van de tool wordt een ongebruikelijk .m4-bestand meegeleverd met instructies voor een automake. Dat kan leiden tot een supplychainaanval wanneer de package liblzma wordt aangemaakt en gebruikt door verschillende tools, waaronder sshd. Red Hat stuurde vrijdag een waarschuwing uit, evenals andere makers van Linux distro's.
Specifieke distributies compromitteren
Deze backdoor is ingevoegd door ofwel een XZ-admin of iemand die het systeem van de beheerder heeft gecompromitteerd. De reden is onduidelijk, maar ogenschijnlijk was het doel om specifieke distributies te compromitteren, aangezien de backdoors alleen werden toegepast op DEB- of RPM-pakketten voor x86-64-architectuur gebouwd met gcc en de gnu-linker. De GitHub-accounts van de makers van de utility zijn geschorst. De backdoor is ontdekt door Microsoft-onderzoeker Andreas Freund, die aan de bel trok.
Er zijn geen meldingen bekend dat deze versies zijn opgenomen in productiereleases voor de belangrijkste Linux-distributies, maar zowel Red Hat als Debian meldden dat recent gepubliceerde bètaversies ten minste een van de gecompromitteerde versies gebruikten, specifiek in Fedora Rawhide en Debian Testing, Unstable en Experimental distributies. Een stabiele versie van Arch Linux is ook getroffen, maar die distributie wordt niet gebruikt in productiesystemen.
Dat de backdoor niet op productie is aangetroffen, is de reden dat het 'eigenlijk niemand in de echte wereld beïnvloedt', zegt een analist van securitybedrijf Analygence tegen Ars Technica. "Maar dat komt alleen omdat het vroeg werd ontdekt vanwege de slordigheid van de slechte actor. Als het niet was ontdekt, zou het catastrofaal zijn geweest voor de wereld."
Bedoeld om authenticatie te omzeilen
De kwaadaardige versies interfereren opzettelijk met de authenticatie uitgevoerd door SSH, een veelgebruikt protocol voor het op afstand verbinden met systemen. SSH biedt robuuste versleuteling om ervoor te zorgen dat alleen geautoriseerde partijen verbinding maken met een extern systeem.
De backdoor is ontworpen om een kwaadaardige actor in staat te stellen de authenticatie te omzeilen en van daaruit ongeautoriseerde toegang te krijgen tot het hele systeem. De backdoor werkt door code in te voegen tijdens een sleutelfase van het aanmeldingsproces.
XZ Utils is beschikbaar voor de meeste Linux-distributies, maar niet allemaal bevatten ze deze standaard. De kwaadaardige wijzigingen werden ingediend door JiaT75, een van de twee belangrijkste ontwikkelaars van XZ Utils met jarenlange bijdragen aan het project.