Re[4]: Внедрение dll с помощью NtCreateThread
От: _cb_  
Дата: 29.03.11 06:06
Оценка:
Здравствуйте, PotapovPV, Вы писали:

PPV>Видимо, я недостаточно четко описал проблему: меня не устраивает вызов NtCreateThreadEx, который осуществляют такие функции как CreateRemoteThread и RtlCreateUserThread, задача стоит именно в вызове NtCreateThread, о чем Рихтер не упоминает.


я уже давно это все не исследовал и чо и как сейчас сделано точно не знаю, но думаю что даже если ты будешь вызывать NtCreateThread, то этот метод все равно в конечном итоге вызовет NtCreateThreadEx.

__>>если по каким-то причинам не подходит CreateRemoteThread юзай NtCreateRemoteThread.

PPV>К сожалению, о такой функции я первый раз слышу, ntdll ее не экспортирует. Где ее можно найти?

ты сам про нее написал в исходном посте. на сколько я понимаю сейчас такой функции уже не существует, вроде бы она была в каких-то старых осях.

я не знаю какую именно задачу ты пытаешься решить, но может забить на все эти CreateRemoteThread и прописать свою dll в AppInitDlls?

если очень хочется поэкспериментировать с созданием удаленных потоков, то можешь попробовать заставить работать вариант с SetThreadContext. но там достаточно много возни, в том числе и с поддержкой x64. плюс есть предположение что метод ненадежный и может обвалить целевой процесс: http://blog.not-a-kernel-guy.com/2010/05/04/812
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.