Программа-невидимка Николай "GorluM" Андреев Хакер, номер #075, стр. 075-110-5 if (lstrcmpiA(lpValueName,FILENAME) == 0) return 1; return ret; } Вот и вся функция! Сравниваем lpValueName (имя ключа) с нашей константой, и если они равны, вернем единицу. Подобным образом перехватывается и уникод-версия функции (только процедура проверки равенства строк немного иная), после чего система напрочь забудет о записях в реестра с именем нашей программы. Красота! Что осталось? Осталась запись в списке процессов, легко ликвидируемая тем, что мы инжектируем весь управляемый код в explorer.exe или lsass.exe, где не будем вызывать ничьего лишнего подозрения. После того как мы скрыли процесс, файл и запись в реестре - никакой даже очень продвинутый пользователь не обнаружит нашей программы у себя на компьютере. Хотя и потратили мы на это немало энергии - исходный код невидимки весит аж 20кб и включает в себя: функции повышения привилегий до уровня отладчика, функции инжектирования, перехвата API, перечисления модулей и процессов, функции для работы с таблицей импорта (потому что я отказался от imahehlp.dll), а также 12 функций-обработчиков. Все это добро ты как обычно обнаружишь на диске. Если возникли вопросы или у тебя есть какие-нибудь необыкновенно интересные идеи - пиши, с удовольствием отвечу. На этом радостной ноте я закругляюсь. Удачного компилирования и изучения недр системы! CD На диске как всегда ты найдешь полный исходный код программы, описанной в статье. WEB Зарубежные коллеги тоже описали стелс-технику базе перехвата API в журнале Phrack, правда реализовали они ее иначе. Почитать будет полезно всем: http://www.phrack.org/show.php?p=62&a=12. INFO Будь аккуратен при использовании EnableDebugPrivilege, далеко не во все процессы можно инжектироваться. Можно и BSOD увидеть (я на него в процессе отладки нагляделся). INFO Если тебя не устраивает инжектирование как способ избежать попадания в список процессов ты можешь перехватить и обработать функцию NtQuerySystemInformation, занимающуюся выводом информации о процессах, модулях и т.п. Об этом уже писалось на www.xakep.ru, если мне не изменяет память. Подробно о самой функции можешь почитать у Гэри Неббета. |