Форум: "WinAPI";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];
ВнизЗащита проги от 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 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.09.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c