![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
fs:[$00000018] [D7, WinXP]
Инс © (2007-07-10 15:47:00)Такой вопрос. Имеется идентификатор потока (чужого), или даже дескриптор. Необходимо получить контекст этого потока (с этим проблем нет) и прочитать значение из fs:[$00000018]. Вот последнее - что-то никак не соображу. Есть идеи?
Инс (2007-07-11 12:33:00) [1]
> А откуда занчание fs возьмешь ?
Уже не важно, но предолагалось GetThreadContext
Сергей М. (2007-07-10 16:18:00) [2]
> Как-нибудь через ReadProcessMemory?
А откуда занчание fs возьмешь ?
И, тем более, данные соотв.дескриптора ?
Вот если бы речь шла о контролируемом запуске целевого процесса в режиме отладки, то тогда и проблем бы не было никаких ...
Инс (2007-07-10 16:10:00) [3]
> Игорь Шевченко © (10.07.07 16:08) [3]
Сенькс, гляну. C Native API дело иметь сильно не приходилось, видимо время пришло...
Игорь Шевченко (2007-07-10 16:08:00) [4]
> Как-нибудь через ReadProcessMemory?
А зачем тебе адрес Teb другого потока (именно его ты читаешь по указанному адресу) ? Разве нельзя его другим путем получить, через какой-нибудь NtQueryInformationThread ?
Инс (2007-07-10 16:00:00) [5]
> Сергей М. © (10.07.07 15:57) [1]
Естественно, первое что пришло в голову - инжект. Но как-то меня это не прет. Может есть другие варианты? Как-нибудь через ReadProcessMemory?
Сергей М. (2007-07-10 15:57:00) [6]
> Есть идеи?
Идея одна - поскольку значение fs имеет смысл лишь в контексте конкретного потока конкретного же процесса, то следует внедрить в этот процесс свой код, который будет иметь такую возможность.