Тэкс... Сейчас посмотрел в ProcessExplorer'е - когда выполняется INT 3 и пытается запуститься Olly, то его родитель - это приложение, которое и...
Это уже переходит всяческие границы. Ставлю INT 3 перед XLdrLoadDll, чтобы посмотреть в чём дело - и отладчик не вызывается (Olly). Просто...
P.S.: XLdrLoadDll - основана на моей функции GetProcedureAddressEx. Там по хэшам вычисляется адрес функции, которую нужно получить. 100% всё...
Не. Проблема не в этом. Сделал так (в хукнутой NtWaitForSingleObject): #define DECLARE_CONST_UNICODE_STRING(_var, _string) \ WCHAR _var ##...
Я уже ппц в шоке. Нихрена не понимаю уже. С какого-то хрена WaitForSingleObject после создания удалённых потоков начинает бажно работать на...
А я разве хукаю LoadLibraryA? Не-а. Я её вызываю в хукнутой функции NtWaitForSingleObject. И после этого всё нахрен падает.
dyn BOOL GetProcedureAddressEx(IN HMODULE hModule, IN PCHAR ProcedureName, OUT LPVOID * ProcedureAddress) { PIMAGE_OPTIONAL_HEADER poh =...
dyn Да тут проще проект прислать. Более 30 КБ кода. А вообще, вот те две функции и хукнутая LdrInitializeThunk: DWORD WINAPI Inject2 (LPVOID...
И... ? Главное, что она не вызывает NtResumeThread, и рекурсии не возникает. =)
М... ? А что такого в вызове функций из user32.dll ? Я же всё равно вызываю функции не из ntdll.dll. К примеру, CreateRemoteThread из kernel32.dll
Может, попробовать хукнуть какую-нибудь другую функцию из ntdll, которая вызывается после того, как подгружены библиотеки из таблицы импорта?...
* Если выполнить Inject2 и поставить коммент на WaitForSingleObject. Вообще, я не могу понять почему при комменте WaitForSingleObject и...
Доброго времени суток! У меня возникли некоторые проблемы хукинга subj'а. Вот код хукнутой NtResumeThread: BYTE bufNtResumeThread[64] = {0}; //...
При старте просто копируешь своё тело в какой-либо процесс (explorer.exe напр.) и выходишь. После этого делаешь со свом exe всё что хочешь.
Да, писал. Подкорректил себя просто.
Это вообще к чему? Причём тут MSDN ? Я использую недокументированные функции из ntdll.dll
Чёто я гоню. Адреса на функции из ntdll.dll нужно через ручной парсинг таблицы экспорта получать. Просто тут жизненно необходимо было получить её...
В общем, тут полюбому нужно иметь базу ntdll.dll, ибо надо получить адрес на функцию LdrGetProcedureAddress(), ну, чтобы и на др. функции из ntdll...
LdrLoadDll =))) Какой я невнимательный.
OMG! В Windows 7 нормальный код функции LoadLibrary хранится в DLL kernelbase.dll
Имена участников (разделяйте запятой).