
Утилиты IDA Pro от команды FLARE
Code Grafter — это скрипт IDA Python, который позволяет использовать режим Bochs IDB IDA Pro для эмуляции кода, импортирующего функции Windows API. Среды эмуляции, такие как режим Bochs IDB, не разрешают и не эмулируют импортированные функции, что приводит к исключениям и невозможности использовать эмуляцию с определённым кодом. Code Grafter решает эту проблему для подмножества функций Windows API, вставляя опкоды и данные для реализации небольшого подмножества импортированных функций Windows API. Code Grafter нацелен на функции с тривиальными реализациями, которые обычно связаны с декодированием строк и распаковкой вредоносного ПО. Возможность использовать режим Bochs IDB, в частности, с такими видами кода позволяет без особых усилий декодировать строки и распаковывать/дамп-ить полезные нагрузки, не беспокоясь о таких проблемах, как анти-реверс-инжиниринг, отладка подпроцессов и т.д.
Файл function_replacements.c содержит компактные реализации на C нескольких
функций, связанных с простыми процедурами декодирования строк и распаковки
вредоносного ПО. Он предоставлен для справки.
После компиляции function_replacements.c соответствующие опкоды функций были
извлечены с помощью emit_fnbytes_python() из (находится в
репозитория flare-ida). Затем опкоды были добавлены в виде
строк Python в библиотеку реализаций функций в (также в
).
mykutils.py/python/flarecode_grafter.py/python/flare