Написание лоадера
От: lpro  
Дата: 27.03.04 13:37
Оценка:
Существует некоторая програмка...
1.exe

У 1.exe после загрузки, по адресу 420102h (к примеру)...после каких-то проверок
устанавливается значение — "1" (к примеру)
00420102: 01 00 00 00

Задача: установить значение по этому адресу в "2" (к примеру.. ) до начала выполнения 1.exe,
но сразу после загрузки его в память...и постоянно обновлять в случае его изменения на любое
другое значение...

таймер + WriteProcessMemory — результатов не дало...
Дело в том, что сразу после какой-то проверки и установки значения в "1" по этому адресу
программой, результат сразу же заносится в ListBox...и скорее всего значение не успевает
обновиться в "2"...есс-но в памяти потом оно устанавливается в "2" (WriteProcessMemory),
но в ListBox'e по-прежнему "1"....искать ячейку памяти строки ListBox'a не очень-то бы
хотелось.....

или может я чего-то не понимаю...

помогите кто сможет, кто сможет помогите....планета шелезяка... )
EA 00 00 FF FF
Re: Написание лоадера
От: Геннадий Майко США  
Дата: 28.03.04 12:30
Оценка:
Здравствуйте, lpro, Вы писали:

L>Существует некоторая програмка...

L>1.exe

L>У 1.exe после загрузки, по адресу 420102h (к примеру)...после каких-то проверок

L>устанавливается значение — "1" (к примеру)
L>00420102: 01 00 00 00

L>Задача: установить значение по этому адресу в "2" (к примеру.. ) до начала выполнения 1.exe,

L>но сразу после загрузки его в память...и постоянно обновлять в случае его изменения на любое
L>другое значение...
--
Написать утилиту, которая является очень специализированным отладчиком, умеющим загружать и стартовать приложение 1.exe; контролировать доступ к ячейке памяти на запись (с помощью отладочных регистров) и изменять ее содержимое.

C уважением,
Геннадий Майко.
Re: Написание лоадера
От: SVV Беларусь  
Дата: 29.03.04 13:07
Оценка:
Здравствуйте, lpro, Вы писали:

если действительно надо получить доступ к List Box, hwnd и т.д. то лучше по ресурсам получить доступ к этому ListBox напрямую и установить его значение через SendMessage. а вот если это способ крэкнуть программу...
Re[2]: Написание лоадера
От: lpro  
Дата: 29.03.04 18:58
Оценка:
Здравствуйте, Геннадий Майко, Вы писали:

ГМ>Написать утилиту, которая является очень специализированным отладчиком, умеющим загружать и стартовать приложение 1.exe; контролировать доступ к ячейке памяти на запись (с помощью отладочных регистров) и изменять ее содержимое.


Я все это прекрасно понимаю...но как это реализовать?
Примерчик бы?...на Дельфе желательно...

В принципе-то все сводится к тому чтобы поставить бряку на изменение значения определенного адреса...Или к примеру создание компоненты типа:

TValueWatcher = class(.......)
//...
//...
property ValueList;
property Active;
property Address;
//...
property OnValueChange;
//...и т.п.
procedure TValueWatcher.OnValueChange(Sender: TObject; Value: DWORD);
//...примерно так :)

EA 00 00 FF FF
Re: Написание лоадера
От: adontz Грузия http://adontz.wordpress.com/
Дата: 29.03.04 19:49
Оценка:
Здравствуйте, lpro, Вы писали:

BOOL CreateProcess(
  LPCTSTR lpApplicationName,
  LPTSTR lpCommandLine,
  LPSECURITY_ATTRIBUTES lpProcessAttributes,
  LPSECURITY_ATTRIBUTES lpThreadAttributes,
  BOOL bInheritHandles,
  DWORD dwCreationFlags, // <<-- That's what we need.
  LPVOID lpEnvironment,
  LPCTSTR lpCurrentDirectory,
  LPSTARTUPINFO lpStartupInfo,
  LPPROCESS_INFORMATION lpProcessInformation
);


Process Creation Flags
.............................
.............................
CREATE_SUSPENDED The primary thread of the new process is created in a suspended state, and does not run until the ResumeThread function is called.

A journey of a thousand miles must begin with a single step © Lau Tsu
Re[3]: Написание лоадера
От: Геннадий Майко США  
Дата: 30.03.04 05:18
Оценка:
Здравствуйте, lpro, Вы писали:

ГМ>>Написать утилиту, которая является очень специализированным отладчиком, умеющим загружать и стартовать приложение 1.exe; контролировать доступ к ячейке памяти на запись (с помощью отладочных регистров) и изменять ее содержимое.


L>Я все это прекрасно понимаю...но как это реализовать?

L>Примерчик бы?...на Дельфе желательно...
--
Пример такого минимального отладчика можно найти в книге Джона Робинсона "Отладка Windows приложений".

C уважением,
Геннадий Майко.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.