· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ASSEMBLER —› Патч процесса в памяти

Посл.отвђт Сообщенiе


Дата: Янв 16, 2004 15:39:20

Раньше я делал патчи так:
дописывал в конце ехе-шника свою процедуру, и из тела ехе-шника обращался к этой подпрограмме.
Но не всегда можно дописать в конец файла: нет места...
Можно ли из одного запущенного процесса (пропатчиваевамая программа) обратиться в другой процесс (программу патчер), там выполнить свое черное дело и вернуться обратно...


Дата: Янв 16, 2004 15:47:28

да. функции VirtualQueryEx/VirtualProtectEx для изменения атрибутов защиты страниц, и ReadProcessMemory/WriteProcessMemory собственно для изменения данных.


Дата: Янв 16, 2004 18:44:21

дык а секцию что ли добавить нельзя


Дата: Янв 16, 2004 18:46:24

Написать DLL, добавить её в импорт экзешника... Здаётся мне, что этот вопрос уже поднимался.


Дата: Янв 16, 2004 19:09:16

Kerghan
Quantum
Ехе-шник трогать нельзя - одно из условий
Grenader
ReadProcessMemory/WriteProcessMemory я представляю себе - использовал.
VirtualQueryEx/VirtualProtectEx - не сталкивался, посмотрю...
Спасибо.


Дата: Янв 16, 2004 19:25:42


Дата: Янв 16, 2004 19:30:40 · Поправил: volodya

Да, по форуму искать надо!


Дата: Янв 16, 2004 19:43:56 · Поправил: Asterix

Угу..


Дата: Янв 16, 2004 20:34:15

У меня ситуация другая мне Loader не нужен.
Имею программу которая должна прыгнуть в другую (в мою), выполнить там подпрограмму и вернуться назад уже с другими значениями регистров.


Дата: Янв 16, 2004 20:39:53

Программа из одного exe в другой не прыгнет, loader в данном случае может дописать любой код в твою цель, например подгрузить твою dll'ку и пропатчить необходимые прыжки, но раз ты этой возможности не заметил тут не о чем говорить...


Дата: Янв 16, 2004 22:20:28

Asterix
Значит ответ на мой вопрос - нет.
Все.


Дата: Янв 16, 2004 22:27:09

Egorka

Объясни подробно, что нужно? зачем? какое конкретно "черное дело", тогда и подумаем ;-)


Дата: Янв 19, 2004 15:35:03

Внедряй dll в работающий процесс и прыгай в нее когда надо.


Дата: Янв 19, 2004 17:18:33

Я так думаю он хотел использовать функцию из чужого exe в своем иначе не понятны trouble ;-)


Дата: Янв 19, 2004 17:56:05

Да нет нитак все.
Есть у меня ехе-шник который патчит другой в памяти, нельзя ли в него запрыгнуть из той программы которую он патчит...
Короче из одного процесса прыгнуть в другой, причем скорее всего только на call места хватит, хотя можно и побольше поискать....


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.043