Сейчас на форуме: YDS, _MBK_, user99, ManHunter (+5 невидимых)

 eXeL@B —› Основной форум —› Помогите, кто в делфи "МАГ"
Посл.ответ Сообщение

Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 декабря 2005 02:22
· Личное сообщение · #1

Привет, у меня такой вопрос:
Как встроить свой код, или чужой заменить через прогу в делфи.
Например во время работы кокого-либо приложения я запускаю программу и она ищет в памяти какое то
значени, а потом его удаляет, или заменяет, или в самом .EXE чтобы код АСМа поменять можно!



Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 декабря 2005 02:32
· Личное сообщение · #2

P.S.
С примером, если можно!




Ранг: 307.9 (мудрец), 196thx
Активность: 0.180
Статус: Участник

Создано: 08 декабря 2005 02:41
· Личное сообщение · #3

SamoVar
она ищет в памяти какое то значени, а потом его удаляет, или заменяет
Это называется лоадер. (Функции ReadProcessMemory, WriteProcessMemory только пред всем этим не забыть CreateProcess =)

или в самом .EXE чтобы код АСМа поменять можно!
А это патчер. (Функции Read, Write)

Второе пишется легче.

-----
Don_t hate the cracker - hate the code.





Ранг: 299.6 (наставник)
Активность: 0.30
Статус: Участник
Armadillo Killer

Создано: 08 декабря 2005 02:43
· Личное сообщение · #4

SamoVar Тебе сюда ...
http://www.exelab.ru/art/
изучай что такое лоадер и как он лепиться



Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 декабря 2005 02:46
· Личное сообщение · #5

Сори, а конкретных примеров нет???



Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 декабря 2005 02:47
· Личное сообщение · #6

Вернее ссылок!



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 08 декабря 2005 03:12
· Личное сообщение · #7

Z0oMiK пишет:
Тебе сюда ...

Кстати, там про лодыри действительно - ничего.
Одна старая и дурная статейка – "C-OrganizerPro - Пишем Loader".
http://www.exelab.ru/art/c_orgpro.php

По крайней мере, снизу до статьи "Исследуем защиту программы WinBoost 4".

...Даже у CyberManiac'a нет ничего про лодыри.

SamoVar
Извечный вопрос - зачем?
Сам понимаешь, спрашиваю не просто так.
Может быть, можно обойтись и без этого или дать конкретный совет.

-----
Всем привет, я вернулся





Ранг: 299.6 (наставник)
Активность: 0.30
Статус: Участник
Armadillo Killer

Создано: 08 декабря 2005 03:21 · Поправил: Z0oMiK
· Личное сообщение · #8

SamoVar Вот тебе пример Лоадера на Delphi

program loader;

uses
Windows, Messages;

{$R Loader.RES}

var
si : Startupinfo;
pi : Process_Information;
NewData : array[0..1] of byte = ($90,$90); // Байты
NewDataSize : DWORD;
Bytesread : DWORD;
Olddata : array[0..1] of byte;


begin
NewDataSize := sizeof(newdata);
IF CreateProcess(nil,'Example.exe',nil,nil,FALSE, Create_Suspended,nil,nil,si,pi) = true then //Цель
begin
ReadProcessMemory(pi.hprocess,Pointer($403CEA),@olddata,2,bytesread); //ищем Адресок1 патчим байты -> @NewData=9090
if (olddata[0] = $75) and (olddata[1] = $19) then
begin
WriteProcessMemory(pi.hProcess, Pointer($403CEA), @NewData, NewDataSize, bytesread); //ищем Адресок2 патчим байты -> @NewData=9090
ResumeThread(pi.hThread);
CloseHandle(pi.hProcess);
CloseHandle(PI.hThread);
end else
begin
Messagebox(0,pchar('Bytes not found! Wrong version?...'),pchar('Error'),mb_iconinformation);
TerminateProcess(PI.hProcess,0);
CloseHandle(PI.hProcess);
CloseHandle(PI.hThread);
end;
end;


end.




Ранг: 6.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 декабря 2005 03:21
· Личное сообщение · #9

Сенкс



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 08 декабря 2005 10:48
· Личное сообщение · #10

SamoVar
Тут почитай, очень пользительно
hack-expo.void.ru/groups/ahteam/text/articles1.htm




Ранг: 230.5 (наставник)
Активность: 0.180
Статус: Участник
Norg

Создано: 08 декабря 2005 12:59
· Личное сообщение · #11

А трейнеры для игр тоже изменяют код на лету.Тока в играх ДМА бесит.Сделал трейнер-он до первой перезагрузки работает,потом адрес меняется в игре и все.

-----
M&#225 enginn renna undan &#254v&#237 sem honum er skapa&#240





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 08 декабря 2005 13:27
· Личное сообщение · #12

di-2 пишет:
потом адрес меняется в игре и все


Ищи указатель на этот адрес.




Ранг: 230.5 (наставник)
Активность: 0.180
Статус: Участник
Norg

Создано: 08 декабря 2005 13:59
· Личное сообщение · #13

NIKOLA пишет:
Ищи указатель на этот адрес
Можно поподробней ,я читал что надо указатель pointer ,его можно с помощью артмани найти,но без арт мани охота.

-----
M&#225 enginn renna undan &#254v&#237 sem honum er skapa&#240





Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 08 декабря 2005 14:17
· Личное сообщение · #14

di-2
Просто гама выделяет себе память и там хранит нужные тебе данные. При другом запуске эта память может быть по другому адресу. Так что нужно искать место в коде, где идет обращение по выделенным адресам памяти, СофтАйс тут рулит однозначно..


 eXeL@B —› Основной форум —› Помогите, кто в делфи "МАГ"
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати