Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Windows7 Поиск базы kernel32.dll

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Windows7 Поиск базы kernel32.dll
Имя
Сообщение << Старые топики   Новые топики >>
Windows7 Поиск базы kernel32.dll - 2009-07-18 12:07:23.866666   
Sunzer

Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
Поставил себе вчера на виртуалку семерку, и столкнулся с проблемой.

Этот код получает базу kernel32.dll через PEB.

MOV EAX,DWORD PTR FS:[30] MOV EAX,DWORD PTR DS:[EAX+0C] MOV ESI,DWORD PTR DS:[EAX+1C] LODS DWORD PTR DS:[ESI] MOV EAX,DWORD PTR DS:[EAX+8]
В Windows7 получается база kernelbase.dll.
Далее мой код парсит таблицу экспорта,находит адрес GetProcAddress.
После того как найдет, передает имя "LoadLibraryA" и базу которая нашлась через PEB.
Далее возратился ноль. В этом и проблема, я не долго думая взял саму либу kernelbase.dll
В экспорте не оказалось "LoadLibraryA", за то есть LoadLibraryExA и LoadLibraryExW для юникода соответственно.

Под Windows 2000, Windows 2003 Server, Windows XP SP3, Windows Vista,
код по поиску двух апи работает нормально.

Теперь решения

1) Как то найти базу kernel32.dll
- Скан памяти в лоб
- Как то еще хитро
- Через SEH или что-то
2) Заюзать через LoadLibraryExA
- Там какие то другие параметры, не юзал раньше но думаю тоже подойдет.

Желательно как-то без особых извращений найти базу кернеля.
Post #: 1
RE: Windows7 Поиск базы kernel32.dll - 2009-07-23 11:37:36.066666   
Sunzer

Сообщений: 253
Оценки: 31190
Присоединился: 2007-06-15 19:23:32.436666
Ок, посмотрю позже, уже через день меня не будет в стране.
Я и не боюсь новых апишек, просто хочу что бы было либче, легче, универсальней.
Код должен быть база-независим.
Post #: 2
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Windows7 Поиск базы kernel32.dll







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.