Вниз
Скачать: CL | DM;

Защита проги от Read/WriteProcessMemory   Найти похожие ветки 

 
v0id ©   (2002-06-27 19:24) [0]

Если кто-то хочет прочитать/записать значение в память процесса, он должен получить хендл процесса, вызовом функции OpenProcess.

HANDLE OpenProcess(

DWORD dwDesiredAccess, // access flag
BOOL bInheritHandle, // handle inheritance flag
DWORD dwProcessId // process identifier
);


Можно ли как-нибудь сделать так, чтобы флагов PROCESS_VM_READ и PROCESS_VM_WRITE не было??? Т.е. чтобы крекер не мог читать и/или изменять мою память (моей проги)??


 
Diamond Cat ©   (2002-06-28 01:05) [1]

нет, в принципе всегда можно добраться до любого раздела памяти, по крайней мере я на асм такое делал, правда один раз я видел какое-то очень навороченное кодирование инфориации причем такое ,что создавалось впечатление что по регистрам только хлам валяется, тогда так и не разобрался как ломать эту прогу, так что рой в этом направлении


 
Игорь Шевченко ©   (2002-06-28 09:29) [2]

v0id © (27.06.02 19:24)

Нельзя. Рекомендую: Свен Шрайбер "Недокументированные возможности Windows 2000 (+CD-ROM)"


 
paul_shmakov ©   (2002-06-28 11:40) [3]

единственная возможность - это глобальный перехват вызовов OpenProcess во всех работающих процессах. функция-перехватчик при попытке открыть наш процесс должна возвращать NULL, а для остальных процессов вызывать оригинальную OpenProcess.

это, кстати, поможет и для защиты от принудительного завершения процесса через TerminateProcess.

как перехватывать здесь уже много раз обсуждалось.


 
Игорь Шевченко ©   (2002-06-28 11:59) [4]

paul_shmakov © (28.06.02 11:40)

На всякий перехватчик найдется перехватчик перехватчика :-)


 
SPeller ©   (2002-06-28 13:43) [5]

Тогда надо отслеживать ещё и установку перехватчика на свой перехватчик. :)


 
v0id ©   (2002-06-28 14:26) [6]

Раз нельзя поменять параметр dwDesiredAccess, зачем он вообще сделан?

Как тогда сделать этот глобальный перехватчик?? У меня есть код на C++, но как его в Delphi ...


 
Digitman ©   (2002-06-28 15:03) [7]

отслеживание перехвата (читай - запись/чтение в интересующем АП по интересующему адресу) доступно только на уровне ядра


 
v0id ©   (2002-06-28 18:19) [8]

послать дискуссию на первое место :0


 
paul_shmakov ©   (2002-06-29 04:01) [9]

2 v0id:
Как тогда сделать этот глобальный перехватчик?? У меня есть код на C++, но как его в Delphi ...

еще раз повторюсь: как перехватывать здесь уже много раз обсуждалось. и совсем недавно.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.01 c
7-3635
programmerts
2002-06-20 19:11
2002.09.02
Каким образом можно безболезненно удалить файлы, которые не удаля


7-3641
svmagnum
2002-05-26 06:02
2002.09.02
Kak mne otodvinut desktop.


14-3564
$ k e l e t
2002-08-05 19:42
2002.09.02
Как летать в GTA 3 с кодом Chittychittybb?


1-3455
-= Like =-
2002-08-19 15:20
2002.09.02
Как прочитать описание .CPL файла?


1-3382
lime
2002-08-20 12:06
2002.09.02
Куешчин...




   Наверх