XZ Backdoor CVE-2024-3094

Am 29. März 2024 ist Andres Freund aufgefallen, dass im Release-Quellcode von "xz-utils" ein Backdoor eingebaut wurde. Er bemerkte es auf seinen Debian SID Installationen. Die Anmeldung über SSH verursachte eine unplausibel hohe CPU-Auslastung. Das veranlasste Andres das genauer zu untersuchen, woraufhin er dann den Backdoor gefunden hat.

Das Release-Quellcode-Archiv von "xz-utils" wurde bei Debian, Ubuntu, Fedora, OpenSuSE und anderen Projekten verwendet, um "xz-utils" zu kompilieren.

Die betroffenen Versionen sind 5.6.0 und 5.6.1.

Hier die Beschreibung von RedHat: https://access.redhat.com/security/cve/CVE-2024-3094 (externer Link!)

Das Projekt "xz-utils" wird von zwei Entwicklern betreut, Lasse Collin und Jia Tan. Das Release-Quellcodearchiv wurde von Jia Tan signiert. Der Backdoor wurde scheinbar von Jia Tan in den Release-Quellcode eingebaut.

Ursprünglicher Maintainer ist Lasse Collin, der wegen psychischer Probleme aber schon seit einigen Jahren einen Co-Maintainer sucht:

I haven't lost interest but my ability to care has been fairly limited mostly due to longterm mental health issues but also due to some other things. Recently I've worked off-list a bit with Jia Tan on XZ Utils and perhaps he will have a bigger role in the future, we'll see.

Quelle (externer Link!): https://www.mail-archive.com/xz-devel@tukaani.org/msg00567.html

Jia Tan ist aber quasi seit Juni 2022 Co-Maintainer:

As I have hinted in earlier emails, Jia Tan may have a bigger role in the project in the future. He has been helping a lot off-list and is practically a co-maintainer already. :-)

Quelle (externer Link!): https://www.mail-archive.com/xz-devel@tukaani.org/msg00571.html

Beide Entwickler wurden bei GitHub gesperrt:

gesperrt1.png

gesperrt2.png

Auch das Projekt wurde von GitHub gesperrt, so dass der Backdoor keine weitere Verbreitung findet.

Der eigentliche Backdoor wurde in Version 5.6.0 eingebaut. Dieser Backdoor verursachte aber Valgrind-Fehler, die dann aber in Version 5.6.1 umgangen wurden.

Andres Freund beschreibt es ausführlich in einer E-Mail: https://www.openwall.com/lists/oss-security/2024/03/29/4 (externer Link!)

Hier ein kleiner Auszug:

Impact on sshd

It appears to wait for "RSA_public_decrypt@....plt" to be resolved. When called for that symbol, the backdoor changes the value of RSA_public_decrypt@....plt to point to its own code.

I have not yet analyzed precisely what is being checked for in the injected code, to allow unauthorized access. Since this is running in a pre-authentication context, it seems likely to allow some form of access or other form of remote code execution.

Ich selbst habe "xz-utils" schon in meinem LFS-Linux Build kompiliert, und ganz sicher habe ich auch das Release-Archiv benutzt und nicht den Quellcode über git gecloned.

Das Vertrauen ist offensichtlich groß.

Wurde der GitHub-Account von Jia Tan von einem "Hacker" übernommen, oder ist Jia Tan der Täter? Das wäre verrückt, weil die Zeit, die aufgewendet wurde, um Co-Maintainer zu werden, sehr hoch ist (~2 Jahre).

Es gibt ein paar verdächtige Aktivitäten:

Hans Jansen bittet darum, dass xz-utils 5.6.1 in Debian integriert wird. Diese Version "fixt" einen Valgrind-"Bug".

"krygorin4545@proton.me" und "misoeater91@tutamail.com" befürworten das Update. Alle diese Personen sind "Neulinge" und sind unbekannt in diesem Bereich. proton.me und tutamail.com sind Anbieter "sicherer" E-Mail Accounts. Das eine Proton, das andere Tutanota. Diese E-Mails können kostenlos erstellt werden und werden häufig missbraucht.

Hans Jansen wurde bei Debian mittlerweile gesperrt.

Jia Tan hat sogar beim Fedora-Team versucht, sein Backdoor unterzubringen:

Very annoying - the apparent author of the backdoor was in communication with me over several weeks trying to get xz 5.6.x added to Fedora 40 & 41 because of it's "great new features". We even worked with him to fix the valgrind issue (which it turns out now was caused by the backdoor he had added). We had to race last night to fix the problem after an inadvertent break of the embargo.

Aber auch bei Ubuntu: https://bugs.launchpad.net/ubuntu/+source/xz-utils/+bug/2059417 (externer Link!)

Jia Tan hat sogar eine Sandbox-Funktionalität durch einen "." deaktiviert (https://git.tukaani.org/?p=xz.git;a=commitdiff;h=f9cf4c05edd14dedfe63833f8ccbe41b55823b00 (externer Link!)).

Es sieht so aus, als ob das von langer Hand geplant wurde. Gruselig.

Auf meinem System sind 221 Programme und Bibliotheken abhängig von "liblzma5".

Ich will mich ja beschweren, dass das Release-Archiv "einfach so" übernommen wurde, und dass qualitätssichernde Maßnahmen deaktiviert wurden, aber ich selbst hätte das auch gemacht :/.

Die "CISA" (Cybersecurity & Infrastructure Agency), oder auch America's Cyber Defense Agency, hat einen Alarm veröffentlicht: https://www.cisa.gov/news-events/alerts/2024/03/29/reported-supply-chain-compromise-affecting-xz-utils-data-compression-library-cve-2024-3094 (externer Link!)

Das Bundesamt für Sicherheit (BSI) hat bisher noch keine Warnung veröffentlicht.

Abschließend noch der HN-Link: https://news.ycombinator.com/item?id=39865810 (externer Link!)

Von da habe ich alles "geklaut" :). Meine Arbeit war die 1600+ Kommentare zu lesen.

Autor: Andreas Schipplock, Erstellt: 3/31/24, 12:14 AM, Aufrufe: 73