Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 июня!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

АРХИВ ФОРУМА eXeL@B
https://exelab.ru/f/

   

HamMer Просмотр памяти другого приложения из своего Собственно, проблем


HamMer Просмотр памяти другого приложения из своего Собственно, проблем заключается в следующем: мне надо написать програм (предпочтительнее на Дельфи), которая переодически будет просматривать память другого приложения, запущенного на этом же компьютере, и будет писать в определенные адреса памяти того приложения заданные значения. Не плохо было бы на примерчик глянуть. Хочу сразу предупредить программы типа CheatO’Matick и иже с ними, мне не подходят!
freeExec :: http://www.wasm.ru/article.php?article=1001028
Почитай как можно отлаживать приложения с использованиями Debug API

[RU].Ban0K! :: ... Кто знает как наХодить HeapZ у левого процесса... HEAP32FIRST не могу заставить паХать :(

[RU].Ban0K! :: freeExec пишет:
цитата:
http://www.wasm.ru/article.php?article=1001028
Почитай как можно отлаживать приложения с использованиями Debug API


А причём здесь DebugAPI... здесь надо ReadProcessMemory юзать

freeExec :: Как я догадываюсь, ему все же надо пропатчить в конкретном месте и в конкретное время выполнения, но он не может там остановится, и поэтому хочет переодически изменять память. А я ему предлогаю типа "автоматический АЙС": поставил бряк где надо, изменил, что надо, и все :)

freeExec :: [RU].Ban0K!

цитата:
наХодить HeapZ у левого процесса


А зачем оно тебе понадобилось, ктому же если даже и сможешь найти, то получить доступ можно только из под административных привелегий, что не каждый имеет :(

MozgC :: На форме Edit и 2 кнопки, одна вызывает диалог выбора файла, другая запуск выбранного файла и начало патча через каждые N секунд по таймеру. Можно конечно проверять по определенным байтам, но мне это влом писать. Кому надо напишет сам. Я просто беру с addressproverki 2 байта и если там 4D 5A то значит прога загружена и ее патчим
Писалось специально под нужды Hammer’а так что не придирайтесь почему я так сделал.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Button2: TButton;
OpenDialog1: TOpenDialog;
Timer1: TTimer;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
StartupInfo: TStartupInfo;
ProcessInfo: TProcessInformation;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
GetStartupInfo(StartupInfo);
StartupInfo.cb := Sizeof(StartupInfo);
StartupInfo.dwFlags := STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow := SW_SHOWDEFAULT;
CreateProcess(nil, PChar(Edit1.Text), nil, nil, False, NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo);
Timer1.Enabled:=true;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Edit1.Text:=OpenDialog1.FileName;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
readbyte: word;
address, addressproverki: dword;
c: cardinal;
const
writebytes: array [1..4] of byte = (1,2,3,4);
begin
addressproverki:=$400000;
address:=$401000;
ReadProcessMemory(ProcessInfo.hProcess,pointer(add ressproverki),@readbyte,2, c);
if readbyte = $5A4D then
WriteProcessMemory(ProcessInfo.hProcess,pointer(ad dress),@writebytes,4, c);
end;

end.

[RU].Ban0K! :: freeExec пишет:
цитата:
А зачем оно тебе понадобилось, ктому же если даже и сможешь найти, то получить доступ можно только из под административных привелегий, что не каждый имеет :(


Я где уж тока не искал... а в MSDN так фигова описано... а во всех левых хэлпах HEAP вообще не описывается...
Для чего? Да в хеопах находится много чего интересного... к примеру я хочу сделать сохронялку для чего либо... под админом мне не обязательно... в w98 которуя я на дняХ поставлю... этого не надо... И ещё эти же хеапы могут находить проги типа ArtMoney... но скока я не отлаживал чтото я не понял как... а на счёт ЧекинОматика... так от вообще всё адресное пространство перерывает....

HamMer :: Вот MozgC написал то, что надо. А про Debug API - штука поленая, спасибо. Только к этому случаю не применима!

freeExec :: У нулевого процесса не то что НЕАРа, даже PIDа нет :) Для тех кто в танке написано "Дездействие системы aka IDLE" Я бы еще понял если тебе понадобился System PID=4
И зачем изобретать велосипед, в PETools есть функция Dump Region , вот и дампь все че хочешь.

[RU].Ban0K! :: freeExec пишет:
цитата:
У нулевого процесса не то что НЕАРа, даже PIDа нет :) Для тех кто в танке написано "Дездействие системы aka IDLE" Я бы еще понял если тебе понадобился System PID=4
И зачем изобретать велосипед, в PETools есть функция Dump Region, вот и дампь все че хочешь.


Ну уж Ring0 тут к чему? Мне нужно какой либо проги (У ЛЮБОЙ) узнать по какому адресу находитЦа Heap... и к чему сдесь PET??? Он не может находить адрессссс Heap... его надо указывать... Да и вообще... мне на счёт Xp не надо ... я на счёт w9x спрашиваю...






   
Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS