Руткит-технологии

Руткит-технологии

Термин руткит (от англ. root kit – «набор для получения прав администратора») есть не что иное, как программа или набор программ для скрытого взятия под контроль взломанной системы.

В контексте сокрытия вирусного кода в системе Windows под rootkit принято подразумевать такой код, который, будучи внедренным в систему, способен перехватывать системные функции (Windows API). Нетрудно догадаться, что такой перехват и модификация API-функций позволяют руткиту легко и просто замаскировать свое присутствие во взломанной системе.

Упрощенно все rootkit-технологии сокрытия можно разделить на две категории:

? работающие в режиме пользователя (user-mode);

? работающие в режиме ядра (kernel-mode).

User-mode-категория руткитов основана на перехвате функций библиотек пользовательского режима, kernel-mode – на установке в систему драйвера, осуществляющего перехват функций уровня ядра.

В настоящее время можно выделить следующие методы перехвата API-функций в режиме пользователя (user mode):

? модификация таблицы импорта;

? модификация машинного кода прикладной программы;

? модификация программного кода API-функции;

? перехват функций LoadLibrary и GetProcAddress.

Модификация таблицы импорта. Пожалуй, именно эта методика сокрытия претендует на звание классической. Технология такой маскировки заключается в следующем: rootkit находит в памяти таблицу импорта исполняемой программы и корректирует адреса интересующих его функций на адреса своих перехватчиков. Кажется, что все достаточно просто.

В момент вызова API-функции программа считывает ее адрес из таблицы импорта и передает по этому адресу управление. Поиск таблицы импорта в памяти несложен, поскольку для этого уже известны специализированные API-функции, позволяющие работать с образом программы в памяти.

Данная методика достаточно универсальна, к тому же она проста в реализации, но у нее есть существенный недостаток – при таком механизме перехватываются только статически импортируемые функции.

Модификация машинного кода прикладной программы. Как следует из названия, суть метода заключается в модификации машинного кода, отвечающего в прикладной программе за вызов той или иной API-функции. Реализация методики достаточно сложна, обусловлено это богатым разнообразием языков программирования и версий компиляторов, к тому же и сама реализация вызовов API-функций может быть различна.

Модификация программного кода API-функции. Методика заключается в том, что rootkit должен найти в памяти машинный код интересующих его API-функций и модифицировать его. При этом вмешательство в машинный код перехватываемых функций минимально. В начале функции обычно размещают две-три машинные команды, передающие управление основной функции-перехватчику. Основным условием такой методики является сохранение исходного машинного кода для каждой модифицированной им функции.

Перехват функций LoadLibrary и GetProcAddress. Перехват этих функций чаще всего выполняется путем модификации таблицы импорта: если перехватить функцию GetProcAddress, то при запросе адреса можно выдавать программе не реальные адреса интересующих ее функций, а адреса своих перехватчиков. При вызове GetProcAddress она получает адрес и выполняет вызов функции.

Перехват функций в режиме ядра (kernel mode). Чтобы понять суть метода, будет полезным рассмотреть принципы взаимодействия библиотек user-mode и kernel-mode.

Взаимодействие с ядром осуществляется через ntdll.dll, большинство функций которой являются посредниками при обращении к ядру через прерывание INT 2Eh. Конечное обращение к функциям ядра основано на структуре KeServiceDescrip-torTable (или сокращенно SDT), расположенной в ntoskrnl.exe. SDT, – это таблица, содержащая адреса точек входа сервисов ядра NT.

Упрощенно можно сказать, что для перехвата функций необходимо написать драйвер, который произведет модификацию таблицы SDT. Перед модификацией драйверу необходимо сохранить адреса перехватываемых функций и записать в таблицу SDT адреса своих обработчиков. Следует отметить, что такой перехват может быть реализован не только в руткитах. Так, существует достаточное количество полезных программ "мирного" назначения, перехватывающих функции при помощи правки SDT (RegMon от SysInternals или программа Process Guard).

Описанный выше метод перехвата можно считать наиболее простым. Существуют и другие подобные способы перехвата, к примеру создание драйвера-фильтра. Драйвер-фильтр может с успехом как решать задачи мониторинга (например, утилита FileMon), так и использоваться для активного внедрения в работу системы.

В частности, драйвер-фильтр может применяться для маскировки файлов и папок на диске. Принцип работы такого драйвера основан на манипуляциях с пакетами запроса ввода-вывода (IRP).

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

ТЕХНОЛОГИИ: 2G, 3G, 3.5G, 3.75G… Технологии мобильной связи дробятся и множатся

Из книги Журнал «Компьютерра» № 24 от 27 июня 2006 года автора Журнал «Компьютерра»

ТЕХНОЛОГИИ: 2G, 3G, 3.5G, 3.75G… Технологии мобильной связи дробятся и множатся Автор: Родион НасакинНи один аналитик не возьмется со стопроцентной уверенностью указать технологию, по которой будет работать подавляющее большинство сетей мобильной связи через пять-десять лет.


ТЕХНОЛОГИИ: IT-технологии Бога Войны

Из книги Журнал «Компьютерра» № 25-26 от 11 июля 2006 года (645 и 646 номер) автора Журнал «Компьютерра»

ТЕХНОЛОГИИ: IT-технологии Бога Войны Автор: Анатолий СорокинВ наши дни первым (а иногда и единственным) приложением результатов развития хайтека является военное дело. Впрочем, так было в любую историческую эпоху. Высокими технологиями в разное время были (и не потеряли


ТЕХНОЛОГИИ: Контроллер контроллеру рознь: Паровозные технологии XXI века

Из книги Журнал «Компьютерра» № 46 от 12 декабря 2006 года автора Журнал «Компьютерра»

ТЕХНОЛОГИИ: Контроллер контроллеру рознь: Паровозные технологии XXI века Автор: Анатолий СорокинВ своей предыдущей статье «IT-технологии Бога Войны» («КТ» #644-645) автор попытался сделать анализ применения и применимости современного хайтека к реалиям современной


ТЕХНОЛОГИИ: Информационные технологии Древней Руси

Из книги Журнал «Компьютерра» № 11 от 20 марта 2007 года автора Журнал «Компьютерра»

ТЕХНОЛОГИИ: Информационные технологии Древней Руси Автор: Ваннах МихаилИнформационные технологии Древней Руси? Ну да, конечно. Когда при раскопках античности обнаружили проволоку, то сделали вывод, что у древних был телеграф. Тем археологическим культурам, где


Технологии

Из книги Цифровой журнал «Компьютерра» № 160 автора Журнал «Компьютерра»

Технологии Десять способов избавиться от ненужного астероида Андрей Письменный Опубликовано 16 февраля 2013Упавший в Челябинске метеорит заставил многих из нас осознать: на наши головы из космоса в любой момент может свалиться что угодно, и на страже нашего небосвода


Технологии

Из книги Цифровой журнал «Компьютерра» № 168 автора Журнал «Компьютерра»

Технологии Почему качество звука больше не имеет значения Олег Нечай Опубликовано 08 апреля 2013 В 1993 году, два десятилетия назад, на свет появился компьютерный формат MP3, воздействие которого на музыкальную культуру цивилизованного человечества


Технологии

Из книги Цифровой журнал «Компьютерра» № 169 автора Журнал «Компьютерра»

Технологии


Технологии

Из книги Цифровой журнал «Компьютерра» № 184 автора Журнал «Компьютерра»

Технологии


Технологии

Из книги Цифровой журнал «Компьютерра» № 186 автора Журнал «Компьютерра»

Технологии Серебряная пуля: Элон Маск раскрыл секреты Hyperloop Евгений Золотов Опубликовано 13 августа 2013 Выждав почти год после первого упоминания, основатель компаний SpaceX, Tesla Motors и Solar City Элон Маск сегодня ночью обнародовал детали проекта Hyperloop —


Технологии

Из книги Цифровой журнал «Компьютерра» № 192 автора Журнал «Компьютерра»


Технологии

Из книги Цифровой журнал «Компьютерра» № 206 автора Журнал «Компьютерра»

Технологии


Технологии

Из книги Цифровой журнал «Компьютерра» № 210 автора Журнал «Компьютерра»

Технологии Автоцензор для Google Glass и носимых камер Андрей Васильков Опубликовано 28 января 2014 На февральском симпозиуме по сетевым и распределённым системам безопасности в Сан-Диего будет представлена разработка под названием PlaceAvoider.Google Glass и


Технологии

Из книги Цифровой журнал «Компьютерра» № 218 автора Журнал «Компьютерра»

Технологии MS Office для iPad — как возвращение к истокам и признание поражения Евгений Золотов Опубликовано 28 марта 2014 Дождались! Сегодня ночью Сатья Наделла, впервые появившийся перед камерами в качестве генерального директора Microsoft, представил


Технологии

Из книги Цифровой журнал «Компьютерра» № 220 автора Журнал «Компьютерра»

Технологии Как интернет-технологии меняют мир бизнеса Михаил Ваннах Опубликовано 11 апреля 2014 Как бы ни проседали бумаги публично торгуемых интернет-компаний («Котировки хайтека летят вниз»), но информационные технологии уже бесповоротно


Технологии

Из книги Цифровой журнал «Компьютерра» № 222 автора Журнал «Компьютерра»

Технологии Как малоизвестная функция iOS 7 сможет изменить мир Олег Нечай Опубликовано 25 апреля 2014 В конце марта 2014 года в магазине мобильных приложений Apple App Store появилась небольшая бесплатная программка под названием FireChat, предназначенная для


Технологии

Из книги Цифровой журнал «Компьютерра» № 221 автора Журнал «Компьютерра»

Технологии Им бы в небо, но... Удастся ли Google и Facebook затея с коммуникационными дронами? Евгений Золотов Опубликовано 16 апреля 2014 О том, что Google приобрела американского разработчика сверхвысотных дронов Titan Aerospace и что обошла в этом деле Facebook,