
Плагин WinDbg для автоматизированного динамического анализа вредоносного ПО и извлечения индикаторов компрометации (IOC). Выполняется внутри отладчика для сбора предопределенных индикаторов и записывает их на диск для реагирования на инциденты и сдерживания.
Модуль отладки для автоматизации анализа вредоносного ПО
Пошаговое руководство по использованию Lupo с изображениями и инструкциями см. в этой статье: https://medium.com/@vishal_thakur/lupo-malware-ioc-extractor-cc86ae76b85d
Работая над инцидентами безопасности, связанными с вредоносным ПО, мы регулярно сталкиваемся с ситуациями, когда возникает необходимость автоматизировать части процесса анализа, поскольку полный ручной анализ, как правило, невозможен для каждого случая по многим причинам (время, навыки, масштаб и т.д.).
Я написал Lupo в первую очередь для максимально возможной автоматизации и ускорения процесса. Lupo — это инструмент динамического анализа, который можно использовать как модуль с отладчиком. Первая версия работает с популярным отладчиком Windows — WinDbg. В будущем я выпущу версии для других отладчиков.
Принцип работы инструмента довольно прост. Вы загружаете Lupo в отладчик и затем выполняете его. Он проходит по вредоносному ПО, собирает предопределенные IOC и записывает их в текстовый файл на диск. Затем вы можете использовать эту информацию для локализации и нейтрализации кампаний вредоносного ПО или просто для реагирования на инцидент безопасности, над которым вы работаете.

Я расскажу еще немного подробностей о самом инструменте, но не слишком много о его внутреннем устройстве, по крайней мере здесь. Нужно помнить, что авторы вредоносного ПО достаточно умны, чтобы быстро модифицировать код и создавать нам проблемы!
Инструмент написан на C++ и использует фреймворк отладки Windows для выполнения кода. Его можно использовать с WinDbg в качестве «плагина» для автоматизации процесса анализа.
Если вы хотите узнать больше об инструменте, не стесняйтесь связаться со мной или оставить комментарий ниже.
Загрузите все DLL из этого репозитория. Вам также понадобятся все зависимости VC++, самый простой способ — установить Visual Studio (подойдет Community версия) и выбрать все компоненты C++.
Использовать инструмент очень просто. Он работает следующим образом:
sdk\samples\exts каталога установки). Вы также можете задать путь к расширениям с помощью команды .extpath[+] [Directory[;…]]..load.lupo.goВы можете дополнительно использовать результаты Lupo с другим инструментом, который я написал — Ragno, чтобы продвинуть свои исследования и реагирование, агрегируя OSINT для более широкого следа возможной кампании, с которой вы имеете дело. Вы можете прочитать о Ragno в другой статье здесь: https://medium.com/@vishal_thakur/introducing-ragno-ioc-multiplier-9b75834353bb