Lasse Collin, der alte Betreuer des xz-Projekts, übergab 2022 die Rechte an den neuen Betreuer Jia Tan, dessen Aktivitäten zur Einführung eines Backdoors führten. Er veröffentlichte die korrigierten Versionen des Pakets XZ Utils 5.2.13, 5.4.7 und 5.6.2, in denen die Backdoor-Komponenten und andere verdächtige Änderungen, die durch die böswilligen Aktivitäten des vorherigen Betreuers hinzugefügt wurden, entfernt wurden.
Zudem wurde ein Bericht über die Überprüfung des Git-Repositories und der seit Dezember 2022 während der Amtszeit von Jia Tan hinzugefügten Änderungen veröffentlicht. Die Änderungen sind auf Ebene der einzelnen Commits analysiert. Die Commits im Repository wurden nicht digital signiert, aber es wurden keine Hinweise auf Fälschungen seitens der Committern gefunden. Insgesamt wurden 8 böswillige Commits aus dem Repository entfernt.
Der CRC CLMUL-Code, der zu Fehlalarms bei der Überprüfung im MSAN (Memory Sanitizer) führt und Probleme mit OSS Fuzz verursacht, wurde bisher nicht aus dem Code entfernt. Dieser Code soll in Zukunft überarbeitet werden, bleibt aber vorerst unberührt, um Regressionen in alten Branches zu vermeiden. Verdächtige Änderungen in alten Commits, die vor den mit dem Backdoor-Vorstoß verbundenen Änderungen hinzugefügt wurden, wurden nicht festgestellt. Separat wurden die po-Dateien der Lokalisierung, die Metadaten in den Tar-Dateien und die Archive mit den Releases und Übersetzungen überprüft.
Zu den Änderungen gehört auch die Aufnahme der gesammelten Bugfixes und die Entfernung der Unterstützung für den IFUNC-Mechanismus, der in Glibc für indirekte Funktionsaufrufe bereitgestellt wird, der im Backdoor verwendet wurde, um Funktionsaufrufe abzufangen. Es wurde festgestellt, dass die Verwendung von IFUNC den Code nur komplizierter macht und der Leistungsvorteil nicht signifikant ist. Als Vorsichtsmaßnahme wurden auch das XZ-Logo, die PDF-Versionen der Man-Seiten und zwei Tests für die Architekturen x86 und SPARC, in denen Objektdateien als Eingabedaten verarbeitet wurden, aus dem Paket mit den Quellcodes entfernt.
Neuigkeiten für den xzdec-Dekodierer ist die Unterstützung der Version 4 des ABI der Anwendungsisolationsmechanismen Landlock. In die Build-Skripte von Autotools wurde die Option „—enable-doxygen“ hinzugefügt, und im CMake-Skript der Parameter ENABLE_DOXYGEN zur Generierung und Installation der API-Dokumentation für liblzma unter Verwendung von Doxygen. Bereits generierte Dokumentationen wurden aus dem Paket entfernt.
Quelle: opennet.ru
