Сделал драйвер, из которого поменял адрес системного вызова в SDT. По новому адресу никаких действий, только вызов истинного адреса. Т.е. демо-хук. Сделал модуль (dll), который определяет номер захученного сервиса и показывает адрес прописанный в ячейке KeServiceDecriptorTable->ServiceTable.[n] Оффсет моей хук-процедуры и значение в ServiceTable.[n] не совпадают, видимо потому, что хук на уровне kernel, а определение в user. Как определить процесс, который поставил этот хук ?
Если дровина просто изменила адрес на свой обработчик то: Енумишь все драйвера, через NtQuerySystemInformation, с класом SystemModuleInfo. Ты получиш структуры в которых есть адрес загрузки и размер. Проходишся по списку и проверяешь адрес ф-цый на вхождения в адр. пространство драйвера. ЗЫ. Это я о самом простом способе хука ... , тоесть без извратов всяких
Понял. А что за извраты ещё могут быть? В смысле подсунуть процедуру перехвата кому-нибудь другому, чтобы не светиться самому?
Думаю, что найти реально всегда. Хук ведь делается в основном чтобы скрыть что-то. А если восстановить SDT, (неважно в каком процессе был засунут обработчик) это самое скрытое и всплывёт. Тогда и станет сразу видно, что за г. всплыло И откуда ноги росли Конечно трудоёмко, но возможно. Имхо.
Когда я говорил о АнтиДетекте .. то я имел ввиду перекрыть возможность восстановления (правильной табл. ) ...
А DKOM методы ты как собираешся ловить? Я например уже перевел свой руткит на чистый DKOM, сейчас он проходит тестирование и скоро будет запущен в работу.
Какая угрожающая фраза )) Всё, что сделал человек, человеком же может быть поломано В т.ч. и твой супер-руткит. Или не так ?
cresta Вечного ничего не бывает. Но если технология проживет хотя бы месяц, то это например для меня очень неплохой результат Ms Rem 1. DKOM - это че такое? манипуляции с оперативкой напрямую, без перехвата функций ядра? 2. Твоя программа для обнаружения скрытых процессов замечает твой процесс, или ты придумал чтото новое?
cresta Чтобы не оставаться голословным, выкладываю драйвер перехватывающий через SDT функцию ZwClose и выводящий при ее вызове строку через DbgPrint. Это простой пример антидетекта, хук не обнаруживается программами VICE, AVZ, SDTRestore и любыми другими работающими на том же принципе. [deleted] Как скачаешь пример, запости, я удалю файл. Corleone Придумал что-то новое.
Ms Rem Мда... скачал, посмотрел в ИДЕ.... я таких команд процессорных не знаю =), а пишешь "С планеты Земля"... Правда размер меня смущает... или это спецмусор?
Вообще-то это так не делается. Если хочешь, чтобы файл получил определенный человек, кидаешь в мыло. А вот мой детектор: [deleted] Извини, если не успел скачать