Показать сообщение отдельно

  #391  
Старый 23.08.2008, 13:10
0verbreaK
Постоянный
Регистрация: 30.04.2008
Сообщений: 323
Провел на форуме:
379101

Репутация: 136
По умолчанию

Также есть вариант (может уже был озвучен, но приведу все равно) получение базы кернела (kernel32.dll) через адрес возврата, после загрузки программы в отладчик
на верхушке стека лежита адрес возврата на kernel32.dll

Следующая картина:

Код:
0012FFC4   77E7EB69  RETURN to kernel32.77E7EB69
0012FFC8   00000007
0012FFCC   00566ED0
0012FFD0   7FFDF000
0012FFD4   F4262CF4
0012FFD8   0012FFC8
0012FFDC   80536A0E
0012FFE0   FFFFFFFF  End of SEH chain
0012FFE4   77E9BB86  SE handler
Используем следующий код для получения базы

Код:
start:
    	pop	ebp	;Return to kernel32.dll
                                    ; (ошибка) адрес внутри кернела
Используя таблицу экспорта можно искать API функции по ординалу, просмотри в иде
таблицу экспорта, в ней можно получить адреса API функций и их ординалы, достаточно дизассемблировать kernel32.dll

Последний раз редактировалось 0verbreaK; 23.08.2008 в 16:28..
 
Ответить с цитированием