
Plugin WinDbg pour l'analyse dynamique automatisée des malwares et l'extraction d'IOC. S'exécute dans le débogueur pour collecter des indicateurs prédéfinis et les écrit sur le disque pour la réponse aux incidents et le confinement.
Module de débogage pour l'automatisation de l'analyse de malwares
Pour un article pas à pas sur comment utiliser Lupo, avec images et instructions, veuillez consulter cet article : https://medium.com/@vishal_thakur/lupo-malware-ioc-extractor-cc86ae76b85d
En travaillant sur des incidents de sécurité impliquant des malwares, nous rencontrons régulièrement des situations où nous ressentons le besoin d'automatiser certaines parties du processus d'analyse, car une analyse manuelle complète est, la plupart du temps, impossible pour chaque cas en raison de nombreux facteurs (temps, compétences, échelle, etc.).
J'ai écrit Lupo principalement pour automatiser et accélérer le processus autant que possible. Lupo est un outil d'analyse dynamique qui peut être utilisé comme module avec le débogueur. La première version fonctionne avec le populaire débogueur Windows — WinDbg. Je publierai des versions pour d'autres débogueurs à l'avenir.
Le fonctionnement de l'outil est assez simple. Vous chargez Lupo dans le débogueur puis vous l'exécutez. Il parcourt le malware et collecte des IOC prédéfinis et les écrit dans un fichier texte sur le disque. Vous pouvez ensuite utiliser ces informations pour contenir et neutraliser des campagnes de malwares ou simplement répondre à l'incident de sécurité sur lequel vous travaillez.

Je donnerai quelques détails supplémentaires sur l'outil lui-même mais pas trop sur son fonctionnement interne, du moins pas ici. Nous devons garder à l'esprit que les auteurs de malwares sont assez intelligents pour modifier rapidement le code afin de nous créer des problèmes !
L'outil est écrit en C++ et utilise le framework de débogage Windows pour exécuter le code. Il peut être utilisé avec WinDbg comme un 'plugin' afin d'aider à automatiser le processus d'analyse.
Si vous souhaitez en savoir plus sur l'outil, n'hésitez pas à me contacter ou à commenter ci-dessous.
Téléchargez toutes les DLL depuis ce dépôt. Vous avez également besoin de toutes les dépendances VC++, le moyen le plus simple est d'installer Visual Studio (la version Community fonctionne) et de sélectionner tous les composants C++.
Utiliser l'outil est très simple. Il fonctionne de cette manière :
Enregistrez l'extension Lupo dans votre répertoire d'extensions (par défaut : sous-répertoire sdk\samples\exts du répertoire d'installation). Vous pouvez également définir le chemin des extensions en utilisant la commande '.extpath[+] [Directory[;…]]'.
Démarrez le débogueur
Attachez le processus à déboguer (le malware dans ce cas)
Chargez Lupo en utilisant la commande '.load'.
Exécutez Lupo en utilisant cette commande : 'lupo.go'
Tous les résultats seront affichés dans la console et également écrits dans un nouveau fichier texte sur le disque. Le chemin et le nom de ce fichier texte seront également affichés dans la console. Tout est fait !
Vous pouvez éventuellement utiliser les résultats de Lupo avec cet autre outil que j'ai écrit — Ragno, pour faire avancer vos recherches et votre réponse en agrégeant l'OSINT pour une empreinte plus large de la campagne à laquelle vous avez peut-être affaire. Vous pouvez lire à propos de Ragno dans un autre article ici : https://medium.com/@vishal_thakur/introducing-ragno-ioc-multiplier-9b75834353bb