IO>>Есть еще один, не совсем очевидный способ — драйвер-фильтр файловой системы и отслеживание IRP_MJ_CREATE с последующим анализом currentIrpStack->Parameters.Create.SecurityContext->DesiredAccess на предмет наличия флажка FILE_EXECUTE.
З>Не могу связать наличие этого флага и запуск процесса — совсем. Причем здесь то, что данные могут читаться использую файл подкачки, я так и не понял.
При том, что образ бинарника отображается на память процесса — механизм MMP, который всегда сопровождается установкой соотв. флага. Конечно, немного не совсем прямое решение, да и будут случаи "фальшстартов" — но во вногих практических случаев это приемлимо.
З>[skip]
З>Если уж спустимся в ядро — тогда перехват Zw(Nt)CreateSection и проверка флага SEC_IMAGE. Даст как раз то — что нам нужно. Вернее — опять в переди паравоза и как следствие будут излишние данные.
Спасибо за наводку. Посмотрю. Хотя, предчувствую, что этот вариант не дает возможность перехвачивать подгрузку DLL..