• Руткит – это вредоносная программа, которая использует различные методы скрытия вредоносного кода и его действий, а также противодействует обнаружению и лечению антивирусом. Технология борьбы с руткитами (Антируткит) в составе многоуровневой системы защиты нового поколения «Лаборатории Касперского» выявляет активное заражение программами-руткитами и устраняет последствия такого заражения.

    Большинство руткитов включают в себя драйвер (или цепочку драйверов), работают в режиме ядра и выполняют одну или несколько следующих функций:

    • скрытие файлов на устройствах хранения информации (жестких дисках), разделов и значений реестра Windows, процессов в системе, загруженных модулей, участков памяти (в случае бесфайлового вредоносного ПО), сетевой активности, секторов диска и других объектов и артефактов;
    • противодействие изменению и (или) удалению руткита антивирусом в случае обнаружения, в том числе путем восстановления измененных компонентов;
    • обеспечение вредоносному коду или приложениям доступа к ядру ОС - для остановки процессов антивируса, внедрения вредоносного кода в легитимные процессы, перехвата сетевого трафика (прослушивание сети), перехвата ввода данных с клавиатуры (клавиатурный шпион) и т. д.

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

    «Лаборатория Касперского» применяет следующие технологии борьбы с руткитами:

    • Поиск активного заражения в системной памяти операционной системы;
    • Сканирование всех возможных мест автозапуска;
    • Устранение обнаруженного активного заражения, восстановление на ранней стадии загрузки операционной системы
    • Нейтрализация активного заражения во время установки продукта на зараженную систему.

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

    Точечный подход заключается в том, что процедуры детектирования и нейтрализации заточены на конкретный руткит или технику сокрытия/противодействия обнаружению. Это позволяет быстро защититься от текущего заражения и выиграть время для разработки более общего подхода.

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

    Продукты «Лаборатории Касперского» используют оба подхода.

    Таким образом, наша система противодействия руткитам включает следующие модули.

    • Модуль, предназначенный для противодействия активному заражению при установке (Installer Protector).
    • Модуль, предоставляющий низкоуровневый доступ к диску и реестру Windows в обход различных перехватов. Также реализует различные техники для «сдерживания» активного заражения в момент лечения (Low-level Disk Access, Low-level Registry Access, Containment).
    • Модуль, реализующий лечение на раннем этапе загрузки ОС (Boot Stage Cleaner).
    • Модуль, предназначенный для поиска и обезвреживания руткитов в системной памяти (System Memory Scanner).

    Модуль, реализующий парсеры форматов файловой системы и парсеры форматов системного реестра Windows (Filesystem Parser, Registry Parser).

    • Модуль сканирования и лечения объектов автозагрузки. Один из важнейших компонентов, использующий большинство вышеперечисленных (Critical Areas Scanner).