Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.27;
Скачать: CL | DM;

Вниз

Поиск значения в памяти процесса   Найти похожие ветки 

 
nop   (2003-11-10 16:40) [0]

Создаю процесс, в памяти которого необходимо НАЙТИ последовательность байт и заменить на другую. Как реализовать поиск и замену?


 
Dimaxx ©   (2003-11-11 00:45) [1]

program Loader;

uses Windows;

const
buf:array[0..1] of byte=($eb,$13);
appname="empty.exe";

Var
i:cardinal;
sti:tstartupinfo;
lpPi:tprocessinformation;

begin
if not CreateProcess(nil,AppName,nil,nil,false,CREATE_SUSPENDED
,nil,nil,StI,lpPI) then
begin
messageboxa(0,"А де radmin.exe?","RA Loader",0);
halt;
end

else
//Ждем пока распакуется
{while true do
if readprocessmemory(lppi.hProcess,pointer($ac0506),@buf[0],1,i)
then
if buf[0]<>$0 then
begin

//остановили процесс
suspendthread(lppi.hThread); }

//записали чо хотели
//writeprocessmemory(lppi.hProcess,pointer($004054DF),@buf[1],1,i);
writeprocessmemory(lppi.hProcess,pointer($004054DF),@buf,2,i);
//поехали дальше!
resumethread(lppi.hThread);

closehandle(lppi.hprocess);
halt;
//end;
end.


 
nop   (2003-11-14 23:30) [2]

To Dimaxx: спасибо большое за пример, но к сожалению это не то что мне нужно. Возможно я не правильно сформулировал вопрос, но мне нужно именно НАЙТИ заданную последовательность, не зная смещения. В этом примере ReadProcessMemory просто проверяет наличие нужного байта по указанному адресу, если то что нужно, то WriteProcessMemory переписывает его. Здесь ничего не ищется, а мне нужна именно процедура поиска и замены, заранее я не знаю где встретится искомая последовательность и встретится ли вообще. Если есть ещё какие-либо варианты, напиши, если не затруднит :)


 
Dimaxx ©   (2003-11-15 00:09) [3]

Через цикл адресов и вперед!


 
nop   (2003-11-15 09:06) [4]

> Через цикл адресов и вперед!

А ведь точно :), только как узнать конечный адрес (размер проекции) в памяти, если, к примеру, запускаемый файл упакован?

Тем не менее, ещё раз спасибо большое за помощь, идея мне понятна.

С уважением, nop



Страницы: 1 вся ветка

Текущий архив: 2003.11.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
7-90139
Basil
2003-09-08 18:08
2003.11.27
Помогите спрятать прогу от CTRL+ALT+DEL в NT!


1-89895
Лана Розанова
2003-11-15 09:59
2003.11.27
ISE


1-89882
Хрюначок
2003-11-15 19:15
2003.11.27
Что делает этот код ??


1-89876
mrAld
2003-11-15 19:37
2003.11.27
FFT


1-89938
SkyRanger
2003-11-18 04:47
2003.11.27
OpenAPI работа с редактором