Возможно ли перехватить событие для ReadProcessMemory ()?

Можно ли перехватывать вызовы ReadProcessMemory () в Win32 API? Я хотел бы сделать это на C или C ++.

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

3

Решение

Вы можете внедрить свой код в каждый запущенный процесс и подключить ReadProcessMemory в вызывающем процессе, точно так же, как и в любой другой функции, но у вас нет способа отцепить его от целевого процесса.

В качестве альтернативы вы можете использовать obRegisterCallbacks () из ядра, чтобы обнаружить OpenProcess () путем фильтрации по типу объекта PsProcessType и операции OB_OPERATION_HANDLE_CREATE. Это покажет вам любые процессы, которые нуждаются в дескрипторах для вызова ReadProcessMemory (). Тогда у вас будет возможность выполнить свой собственный код, когда эти события запускаются ядром. Вы также можете поговорить с процессом пользовательского режима из вашей процедуры obRegisterCallbacks.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]