kejcerfcrv В ядре. В этом то проблема, драйвер уже умеет хукать ntOpenProcess и ntDuplicateObject, но чужие драйвера все равно могут обходит хук. Или надо еще что то добавить чтобы защитить хуки? Спасибо!
Hippey Nt/Zw* функции это системные сервисы, они для юзания из юзермода через механизм сисколов. Драйвера их мало используют, по нормальному вообще их не должны юзать. Это левый механизм для ядра, конечно он не имеет никакого отношения например к копированию обьекта или референсу на нём(ваша NtOpenProcess). В ядре выполняется аттачь к процессу, а не его открытие. Ядро манипулирует ссылками на обьекты, а не описателями, хотя иногда и ими не брезгуют.
я юзаю obregistercallbacks на 64 битах. kejcerfcrv Можешь подсказать есть ли где-нибудь статьи о защите от аттача к процессу и другие способы лока драйвера при попытке получения доступа к процессу
Hippey От этого нельзя никак защищаться, так как привилегии не разграничиваются. Всегда можно всё подёргать в обход, например вы пропатчите KeAttackProcess(), ничего не мешает дёрнуть это в обход, вручную или вообще не использовать.
А есть ли у кого решение, раз полностью защититься от других драйвером невозможно, какой вариант самый лучший по хащите процесса?