Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.07.17;
Скачать: [xml.tar.bz2];

Вниз

Как пропатчить процесс в памяти ?   Найти похожие ветки 

 
DrDrew   (2003-07-05 17:41) [0]

Требуется написать лоадер кот. бы запускал прогу и патчил ее код в памяти. Если кто нить делал что либо подобное - поделитесь плиз примерчиком.
Заранее спасибо.


 
Dimaxx   (2003-07-05 23:42) [1]

Вот тебе пример реально работающего загрузчика. Функции readprocessmemory и writeprocessmemory - это то, что тебе нужно.

program Loader;

uses Windows;
const buf:array[0..1] of byte=($eb,$13);
const 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.



 
DrDrew   (2003-07-06 19:29) [2]

Big tnx!



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

Форум: "Основная";
Текущий архив: 2003.07.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.009 c
14-55834
PlaTinum
2003-07-01 20:16
2003.07.17
Raport


14-55751
Катерина
2003-07-03 10:07
2003.07.17
CMYK


3-55446
merlot
2003-06-24 14:58
2003.07.17
Запрос с пользовательскими параметрами...


14-55841
Soft
2003-07-01 13:30
2003.07.17
Абсолютное оружие


8-55669
Арм
2003-03-25 02:50
2003.07.17
Midi





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский