Начиная с версии IDA Pro 5.6 появился достаточно интересный, но не однозначный функционал, который позволяет вызывать нативные функции из отлаживаемого приложения прямо в процессе его отладки. Называется он appcall , но я встречал мало людей, которые действительно нашли ему применение в реальной жизни. Для себя же я счел его полезным для некоторых вещей в процессе исследования вредоносных программ, о чем и хочу рассказать вам ниже.
Одно самое важное ограничение appcall, это работа только в режиме отладки, то есть с уже запущенной программой, что в моем случае не всегда удобно, так как исследование вредоносных программ не всегда возможно в отладчике IDA. Причин на это достаточно много, начиная от более привычного и удобного для меня интерфейса OllyDbg и заканчивая рядом возможностей ольки, которых просто нет в отладчике IDA. Но при всем при этом, appcall парой может быть полезен. Например, во вредоносной программе используется функция хеширования для сокрытия явного обращения к библиотечным функциям, можно реализовать ее функционал в виде скрипта и обращать непонятные значения во волне читаемые имена функций, но это все же займет больше времени, чем просто вызывать соответствующий блок кода из уже отлаживаемой программы.
Одно самое важное ограничение appcall, это работа только в режиме отладки, то есть с уже запущенной программой, что в моем случае не всегда удобно, так как исследование вредоносных программ не всегда возможно в отладчике IDA. Причин на это достаточно много, начиная от более привычного и удобного для меня интерфейса OllyDbg и заканчивая рядом возможностей ольки, которых просто нет в отладчике IDA. Но при всем при этом, appcall парой может быть полезен. Например, во вредоносной программе используется функция хеширования для сокрытия явного обращения к библиотечным функциям, можно реализовать ее функционал в виде скрипта и обращать непонятные значения во волне читаемые имена функций, но это все же займет больше времени, чем просто вызывать соответствующий блок кода из уже отлаживаемой программы.