Плагин для ImpRec или скрипт для Olly?

Тема в разделе "WASM.RESEARCH", создана пользователем SOUZ, 2 авг 2007.

  1. SOUZ

    SOUZ New Member

    Публикаций:
    0
    Регистрация:
    15 июл 2004
    Сообщения:
    19
    Адрес:
    IBSS
    Такая ситуация:

    Имею восстановленный в ImpRec импорт:

    1 005DC190 kernel32.dll 0147 GetCurrentThreadId
    1 005DC194 kernel32.dll 0082 DeleteCriticalSection
    1 005DC198 kernel32.dll 0252 LeaveCriticalSection
    1 005DC19C kernel32.dll 0099 EnterCriticalSection
    1 005DC1A0 kernel32.dll 0224 InitializeCriticalSection
    0 005DC1A4 ? 0000 05501A61
    0 005DC1A8 ? 0000 05501A71
    0 005DC1AC ? 0000 05501A81
    0 005DC1B0 ? 0000 05501A91
    1 005DC1B4 kernel32.dll 0229 InterlockedDecrement
    1 005DC1B8 kernel32.dll 022D InterlockedIncrement

    в нераспознанных:
    Disassemble:
    ...
    Call Proc_GetIATAddress(seed); после выполнения в eax=настоящий адрес функции.
    Соответственно необходимо выполнить Proc_GetIATAddress в каждой из нераспознанных строчек и восстановить импорт.
    Каждый раз патчить тело программы, шобы она сама искала адреса не хочется.

    Как лучше автоматизировать процесс? Можно ли в плагине к ImpRec это реализовать?
    Пасиб.
     
  2. Faza

    Faza New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2005
    Сообщения:
    2
    А roc_GetIATAddress(seed) как работает, как узнает нужный адресс ? если можно без лишних усилий проэмулировать работу этой функции, то имперек будет предпочтительней , если же тебе все таки нужно будет запустить эту функцию в контексте защищаемого приложения , тогда рулит олька.