Ich bin in den letzten Tagen über Eric Parker auf Malware gestößen, über BeamNG-Mods verteilt wurde.
Das interessante an dieser Malware ist, dass sie zwar in Python geschrieben ist, aber mithilfe von Pyinstaller1 kompiliert wurde. Dadurch, in Verbindung mit der gewählten Python-Version, ist die Malware effektiv nicht dekompilierbar und nur schwer zu reverse engineeren. Die meisten Informationen über die Malware mussten daher über dynamische Analyse in Sandboxen und VMs gewonnen werden.
Dieser Blogpost ist dazu da, meine Gedanken zu der XZ-Situation zusammenzufassen.
1. Die Entdeckung Die Entdeckung der Backdoor in liblzma war einerseits ein purer Glücksgriff, andererseits auch ein Beispiel dafür, warum Open Source so wichtig für die Entdeckung und Analyse von Schwachstellen ist. In diesem Fall war es dem Entdecker - trotz der Tatsache, dass er eigentlich Datenbank-Entwickler ist - in verhältnismäßig kurzer Zeit möglich, die Ursache der “langsamen” SSH-Logins (800 statt 300 ms) zu ermitteln und zu analysieren.
Babelfish ist ein Projekt, das die Verwendung von Postgresql für Software erlaubt, die eigentlich für MSSQL (Microsoft SQL Server) geschrieben wurden. Dies erlaubt zum einen das einsparen von Lizenzkosten, die bei MSSQL, insbesondere für hochverfügbare Umgebungen, leicht sehr hoch werden können, zum anderen aber auch, das größere und modernere Postgres-Ökosystem verwenden zu können.
Was ist Babelfish? Ähnlich wie sein Namensvorbild, ist Babelfish kein migrationstool o.ä., sondern eine Kompatibilitäts/Übersetzungsschicht, vergleichbar etwa mit Wine.
Nach der Installation der Sandbox-Umgebung an sich kann man an die Erstellung und Installation der VMs gehen. Hier werde ich als Beispiel die Installation einer Windows 7 64bit-VM inkl. Microsoft Office 2010 (32bit) durchführen. Letztendlich gibt es jedoch keinen großen Unterschied zwischen den unterstützten Gast-Betriebssystemen (Windows 7+, MacOS oder diverse Linux-Distributionen), es ist jedoch je nach Platform mehr oder weniger Aufwand (Bei Windows 10+ muss Defender komplett deaktiviert werden und es empfiehlt sich den Großteil der Bloatware zu deinstallieren um die Hardwareanforderungen zu verringern).
Die CAPEv2-Sandbox-Umgebung ist sehr nützlich für die Analyse von Malware, da man hier die Malware in einer kontrollierten Umgebung “zünden” kann und eine genaue Protokollierung hat. Die Installation und konfiguration von CAPE ist jedoch nicht besonders einfach. Dieser Blogeintrag kann Ihnen hoffentlich als Einstieg dienen um sich eine solche Umgebung aufzubauen. Bei Rückfragen und weiterführenden Themen stehe ich gerne zur Verfügung.
Basis Die Installations- und Konfigurationsskripte von CAPEv2 sind auf Ubuntu 22.