XZ-Angriffsshellskript
- Andres Freund machte am 29. März 2024 die Existenz des XZ-Angriffs öffentlich.
- Der Angriff ist in zwei Teile gegliedert: ein Shellskript und eine Objektdatei.
- Das Shellskript fügt die Objektdatei während des
make-Prozesses in den Build ein.
- Die bösartige Objektdatei und der Shell-Code wurden als „Testeingaben“ getarnt, komprimiert und verschlüsselt eingebunden.
Aufbau
- xz-utils verwendet GNU autoconf, um zu bestimmen, wie der Build an das jeweilige System angepasst wird.
- Der Angreifer fügte der Tarball-Distribution eine unerwartete Support-Bibliothek hinzu.
- Diese Support-Bibliothek enthält bösartigen Code.
Aufbau erneut betrachtet
- Die vom Angreifer hinzugefügte Support-Bibliothek sucht nach bestimmten Mustern und konfiguriert die entsprechende Datei.
- Dieses Skript findet die bösartige Datei und führt sie aus, um Shell-Code einzuschleusen.
Ausführung des Shellskripts
- Das bösartige Shellskript wird nur in der erforderlichen Umgebung ausgeführt, nachdem es mehrere Prüfungen durchlaufen hat.
- Das Skript fügt dem Makefile mehrere Zeilen hinzu, um bösartigen Code in den Build-Prozess einzuschleusen.
Meinung von GN⁺
- Dieser Angriff legt Sicherheitslücken in Open-Source-Software offen, und Entwickler sollten die Bedeutung von Code-Reviews und Sicherheitsaudits erkennen.
- Die Angriffsmethode ist ein Beispiel für einen Software-Supply-Chain-Angriff, und es sind Maßnahmen nötig, um solche Angriffe zu verhindern.
- Dieser Artikel kann bei Entwicklern das Bewusstsein schärfen, indem er zeigt, wie Angriffe Shellskripte und die Komplexität von Build-Systemen ausnutzen.
- Aus kritischer Sicht können solche Angriffe Fragen zur Zuverlässigkeit von Open-Source-Projekten aufwerfen.
- Unter Nutzung von Wissen aus verwandten Bereichen betont dieser Artikel die Bedeutung von Sicherheitsprüfungen im Prozess der Softwareentwicklung und -verteilung.
Noch keine Kommentare.