Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "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.01 c
14-3616
MJH
2002-08-04 01:36
2002.09.02
Не знает ли кто компонент? (Chapter 2)


1-3345
RedArc
2002-08-21 18:19
2002.09.02
TMemo


1-3510
Darkwin
2002-08-21 14:13
2002.09.02
помогите, не закрывается MDIChild - окно


4-3684
?Feuerraeder
2002-07-02 04:42
2002.09.02
Как не дать окну свернуться


3-3320
Не зарегестрированный чайник
2002-08-13 19:34
2002.09.02
Запрос без помощи SQL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский