наркоманчик ты мой, патчгард то и предоставляет легальный функционал для хукания АПИ. попытка сделать единственный, но легальный путь для хукания.
тык не дают апи походу. нашел только на социал мсдне, где автор сэндбокси просит апи и спустя 4 дня бампит тему - но безответно
Читай MSDN. Для контроля доступа к процессам и потокам есть ObRegisterCallbacks(), для контроля работы с файловой системой используются дисковые фильтры, для сети -- WFP и NDIS IM. Перечисленных выше механизмов более чем достаточно для работы полноценного антивируса/файрволла. Разумеется, проактивные защиты типа "похукаем всего и побольше" в данном случае несколько обламываются, но они уже начинают уходить в прошлое: HIPS для x64 есть всего у нескольких вендоров, но при этом даже продукты от ЛК в последних версиях (включая 32-х разрядные) имеют более слабую реализацию проактивной защиты, чем 2-3 года назад. Вариант с отключением PatchGuard, разумеется, так же возможен, но скорее всего продукты с такими манипуляциями будут покупать разве что домашние пользователи, которым маркетологи насрали в голову. Такие дела.
Cr4sh как всегда - грасиас за развернутый ответ. EP_X0FF инлайном? это всмысле джампом чтоли? (такжыж сплайс - тоже самое)
Cr4sh Да. Sandboxie например использовало. Код (Text): nt!NtUserBlockInput mov rax,0FFFFF880068534E0h jmp rax sub esp,20h mov esi,ecx Для GDI/USER контроля (окошки там, бруты мессаджами, примитивные клавиатурные перехватчики итд, судя по списку хуков сандбокси это самозащита), так как полноценной замены тому что IPS/sandbox имеют на х86 еще нет. Я за расширение списка патчгард и выпиливание всех этих никчемных хукалок.
sn0w см выше. Патчгард накрывает ntoskrnl, ci.dll, hal.dll, kdcom.dll, pshed.dll, ndis.sys, tcpip.sys, clfs.sys AFAIR, таким образом инлайн патч win32k его не вызовет, а перехват в win32k SSDT да.
T800 Да можно. Ядро хукать для авером гидлое дело, с ядром еще надо уметь работать. Так что имея безместлена .. А вот не доать что то прогрузить это вполне актуально, для этого куча легального апи. Но и одной из главной задачи не дать разрушить ядро чем и занимается PatchGuard.
shchetinin Ну а как аверам фильтровать, к примеру, эти функи: NtUserCallTwoParam, NtUserGetAsyncKeyState ?
shchetinin Ну допустим в Каспер Лабе захотят и GetAsyncKeyState нотифицировать. Тогда им придётся её хукать. Или например захотят блочить передвижение мыши через SetCursorPos при активном окне АВ.
Патч как механизм подлежит выпилу без обсуждения. Авер, не авер значения не имеет. Всё что изменяет кодосекции подлежит удалению.
sn0w Если имеется в виду утилита образца 2006-2008 годов - я не вижу в ней на х64 никакого смысла. Иная архитектура, иной подход ко многим вещам. Однако наработки в области x64 rootkit s&d имеются в виде отдельного инструментария, и он успешно применяется уже достаточно долгое время, но создавать что-либо (standalone, complex не важно) для широкого круга пользователей в наши планы не входит. Так что если хотите такое - пишите сами или ждите кого-нибудь еще.
EP_X0FF Смешно ваш сайт читать, какие руткиты, о чём вы говорите. У вас там всё на сст клином сошлось. Холивар же это не рабочий. Кстате тут в иде аверский дров - как вы такое кодите!??