
WinDbg-Plugin für automatisierte dynamische Malware-Analyse und IOC-Extraktion. Führt im Debugger aus, um vordefinierte Indikatoren zu sammeln und schreibt sie für Incident Response und Eindämmung auf die Festplatte.
Debugging-Modul zur Automatisierung der Malware-Analyse
Eine Schritt-für-Schritt-Anleitung zur Verwendung von Lupo mit Bildern und Anweisungen finden Sie in diesem Beitrag: https://medium.com/@vishal_thakur/lupo-malware-ioc-extractor-cc86ae76b85d
Bei der Bearbeitung von Sicherheitsvorfällen, die Malware betreffen, stoßen wir regelmäßig auf Situationen, in denen wir das Bedürfnis verspüren, Teile des Analyseprozesses zu automatisieren, da eine vollständige manuelle Analyse aus vielen Gründen (Zeit, Fähigkeiten, Umfang usw.) in den meisten Fällen nicht für jeden Fall möglich ist.
Lupo habe ich hauptsächlich geschrieben, um den Prozess so weit wie möglich zu automatisieren und zu beschleunigen. Lupo ist ein dynamisches Analysewerkzeug, das als Modul mit dem Debugger verwendet werden kann. Die erste Version arbeitet mit dem beliebten Windows-Debugger — WinDbg. Ich werde in Zukunft Versionen für andere Debugger veröffentlichen.
Die Funktionsweise des Tools ist recht einfach. Sie laden Lupo in den Debugger und führen es dann aus. Es durchläuft die Malware und sammelt vordefinierte IOCs und schreibt sie in eine Textdatei auf der Festplatte. Diese Informationen können Sie dann verwenden, um Malware-Kampagnen einzudämmen und zu neutralisieren oder einfach auf den Sicherheitsvorfall zu reagieren, an dem Sie arbeiten.

Ich werde noch einige Details zum Tool selbst geben, aber nicht zu viel über die inneren Abläufe, zumindest nicht hier. Wir müssen bedenken, dass die Malware-Autoren klug genug sind, den Code schnell anzupassen, um uns Probleme zu bereiten!
Das Tool ist in C++ geschrieben und nutzt das Windows-Debugging-Framework zur Ausführung des Codes. Es kann mit WinDbg als 'Plugin' verwendet werden, um den Analyseprozess zu automatisieren.
Wenn Sie mehr über das Tool erfahren möchten, können Sie mich gerne kontaktieren oder unten einen Kommentar hinterlassen.
Laden Sie alle DLLs aus diesem Repository herunter. Sie benötigen außerdem alle VC++-Abhängigkeiten – der einfachste Weg ist die Installation von Visual Studio (die Community-Version funktioniert) und die Auswahl aller C++-Komponenten.
Die Verwendung des Tools ist sehr einfach. Es funktioniert folgendermaßen:
Speichern Sie die Lupo-Erweiterung in Ihrem Erweiterungsverzeichnis (Standard: Unterverzeichnis sdk\samples\exts des Installationsverzeichnisses). Sie können den Erweiterungspfad auch mit dem Befehl ‘.extpath[+] [Directory[;…]]’ festlegen.
Starten Sie den Debugger
Hängen Sie den zu debuggenden Prozess an (in diesem Fall die Malware)
Laden Sie Lupo mit dem Befehl ‘.load’.
Führen Sie Lupo mit diesem Befehl aus: ‘lupo.go’
Alle Ergebnisse werden in der Konsole angezeigt und auch in eine neue Textdatei auf der Festplatte geschrieben. Pfad und Name dieser Textdatei werden ebenfalls in der Konsole angezeigt. Fertig!
Sie können optional die Ergebnisse von Lupo mit einem weiteren von mir geschriebenen Tool – Ragno – verwenden, um Ihre Forschung und Reaktion zu verbessern, indem Sie OSINT für den breiteren Fußabdruck der möglichen Kampagne aggregieren. Mehr über Ragno erfahren Sie in einem weiteren Beitrag hier: https://medium.com/@vishal_thakur/introducing-ragno-ioc-multiplier-9b75834353bb