Re[4]: Как отследить запуск нового процесса?
От: Злость Россия  
Дата: 22.11.04 08:21
Оценка: 2 (2)
Здравствуйте, Ihor Osovyak, Вы писали:

[skip]

IO>Проходил мимо, случайно заметил.. Лучше позно, чем никогда.. Может кто поиском пользуется.


IO>Для NT ряда — PsSetCreateProcessNotifyRoutine — можно поставить на уровне ядра...


Ограниченый ресурс.

IO>Есть еще один, не совсем очевидный способ — драйвер-фильтр файловой системы и отслеживание IRP_MJ_CREATE с последующим анализом currentIrpStack->Parameters.Create.SecurityContext->DesiredAccess на предмет наличия флажка FILE_EXECUTE.


Не могу связать наличие этого флага и запуск процесса — совсем. Причем здесь то, что данные могут читаться использую файл подкачки, я так и не понял.

[skip]

Если уж спустимся в ядро — тогда перехват Zw(Nt)CreateSection и проверка флага SEC_IMAGE. Даст как раз то — что нам нужно. Вернее — опять в переди паравоза и как следствие будут излишние данные.
Правда, Ложь — мне все одно — я имею свое мнение.
Если функция недокументированна — это не значит, что ее не используют все ваши конкуренты в своих продуктах.
Любой строй переходный и отрицать это значит быть закостенелым идиотом.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.