Die XZ-Hintertür: Alles, was Sie wissen müssen


Am Freitag erschütterte ein einzelner Microsoft-Entwickler die Welt, als er a enthüllte Hintertür wurde absichtlich in XZ Utils eingebaut, einem Open-Source-Dienstprogramm zur Datenkomprimierung, das auf fast allen Installationen von Linux und anderen Unix-ähnlichen Betriebssystemen verfügbar ist. Die Person oder die Personen, die hinter diesem Projekt stehen, haben wahrscheinlich Jahre damit verbracht. Sie waren wahrscheinlich kurz davor, das Backdoor-Update in Debian und Red Hat, den beiden größten Linux-Distributionen, zu integrieren, als ein Softwareentwickler mit scharfem Blick etwas Verdächtiges entdeckte.

„Dies könnte der am besten ausgeführte Supply-Chain-Angriff sein, den wir je offen beschrieben haben, und es ist ein Albtraumszenario: böswillig, kompetent, autorisierter Upstream in einer weit verbreiteten Bibliothek“, so Software- und Kryptografie-Ingenieur Filippo Valsorda sagte der Anstrengung, die einem Erfolg erschreckend nahe kam.

Forscher haben das Wochenende damit verbracht, Hinweise zu sammeln. Folgendes wissen wir bisher.

Was sind XZ Utils?

XZ Utils ist unter Linux nahezu allgegenwärtig. Es bietet verlustfreie Datenkomprimierung auf praktisch allen Unix-ähnlichen Betriebssystemen, einschließlich Linux. XZ Utils bietet wichtige Funktionen zum Komprimieren und Dekomprimieren von Daten bei allen Arten von Vorgängen. XZ Utils unterstützt auch das alte .lzma-Format, was diese Komponente noch wichtiger macht.

Was ist passiert?

Andres Freund, ein Entwickler und Ingenieur, der an den PostgreSQL-Angeboten von Microsoft arbeitet, hat kürzlich Leistungsprobleme behoben, die ein Debian-System mit SSH hatte, dem am weitesten verbreiteten Protokoll für die Remote-Anmeldung bei Geräten über das Internet. Insbesondere verbrauchten SSH-Anmeldungen zu viele CPU-Zyklen und führten zu Fehlern Valgrindein Dienstprogramm zur Überwachung des Computerspeichers.

Durch reines Glück und Freunds aufmerksames Auge entdeckte er schließlich, dass die Probleme auf Aktualisierungen zurückzuführen waren, die an XZ Utils vorgenommen worden waren. Am Freitag wandte sich Freund an die Open-Source-Sicherheitsliste, um offenzulegen, dass die Aktualisierungen darauf zurückzuführen seien, dass jemand absichtlich eine Hintertür in die Komprimierungssoftware eingebaut habe.

Was macht die Hintertür?

Schädlicher Code, der den XZ Utils-Versionen 5.6.0 und 5.6.1 hinzugefügt wurde, veränderte die Art und Weise, wie die Software bei der Durchführung von Vorgängen im Zusammenhang mit der .lzma-Komprimierung oder -Dekomprimierung funktioniert. Wenn diese Funktionen SSH beinhalteten, ermöglichten sie die Ausführung von Schadcode mit Root-Rechten. Dieser Code ermöglichte es jemandem, der im Besitz eines vorgegebenen Verschlüsselungsschlüssels war, sich über SSH beim hintertürten System anzumelden. Von da an hätte diese Person das gleiche Maß an Kontrolle wie jeder autorisierte Administrator.

Wie ist diese Hintertür entstanden?

Es scheint, dass an dieser Hintertür jahrelang gearbeitet wurde. Im Jahr 2021 hat jemand mit dem Benutzernamen JiaT75 sein Konto erstellt erster bekannter Commit zu einem Open-Source-Projekt. Rückblickend ist die ändern zum libarchive-Projekt ist verdächtig, da es die Funktion „safe_fprint“ durch eine Variante ersetzt hat, die seit langem als weniger sicher gilt. Damals bemerkte es niemand.

Im folgenden Jahr reichte JiaT75 einen Patch über die XZ Utils-Mailingliste ein, und fast sofort beteiligte sich ein noch nie zuvor gesehener Teilnehmer namens Jigar Kumar an der Diskussion und argumentierte, dass Lasse Collin, der langjährige Betreuer von XZ Utils, dies nicht getan habe Aktualisieren Sie die Software häufig oder schnell genug. Mit der Unterstützung von Dennis Ens und mehreren anderen Personen, die noch nie auf der Liste gestanden hatten, setzte Kumar Collin unter Druck, einen zusätzlichen Entwickler zu engagieren, um das Projekt aufrechtzuerhalten.

Im Januar 2023 machte JiaT75 ihre erstes Commit zu XZ Utils. In den folgenden Monaten wurde JiaT75, der den Namen Jia Tan verwendete, zunehmend in die Angelegenheiten von XZ Utils verwickelt. Zum Beispiel ersetzte Tan Collins‘ Kontaktinformationen durch seine eigenen auf oss-fuzz, einem Projekt, das Open-Source-Software auf ausnutzbare Schwachstellen scannt. Tan forderte außerdem, dass oss-fuzz die ifunc-Funktion während des Tests deaktiviert, eine Änderung, die verhinderte, dass die böswilligen Änderungen erkannt wurden, die Tan bald an XZ Utils vornehmen würde.

Im Februar dieses Jahres gab Tan Commits für die Versionen 5.6.0 und 5.6.1 von XZ Utils heraus. Die Updates implementierten die Hintertür. In den folgenden Wochen appellierten Tan und andere an die Entwickler von Ubuntu, Red Hat und Debian, die Updates in ihre Betriebssysteme zu integrieren. Schließlich gelangte eines der beiden Updates in mehrere Veröffentlichungen, entsprechend Sicherheitsfirma Tenable. Es gibt mehr über Tan und die Zeitleiste Hier.

Können Sie mehr darüber sagen, was diese Hintertür bewirkt?

Kurz gesagt: Es ermöglicht jemandem mit dem richtigen privaten Schlüssel, sshd, die ausführbare Datei, die für die Herstellung von SSH-Verbindungen verantwortlich ist, zu kapern und von dort aus bösartige Befehle auszuführen. Die Hintertür wird durch einen fünfstufigen Loader implementiert, der eine Reihe einfacher, aber cleverer Techniken verwendet, um sich selbst zu verbergen. Es bietet auch die Möglichkeit, neue Nutzlasten zu liefern, ohne dass größere Änderungen erforderlich sind.

Mehrere Personen, die die Updates rückentwickelt haben, haben noch viel mehr über die Hintertür zu sagen. Entwickler Sam James hat zur Verfügung gestellt eine Übersicht hier.

source-114

Leave a Reply