Вредоносная программа для Linux, получившая название «Bootkitty», является пробным вариантом, который работает только на некоторых версиях и конфигурациях Ubuntu, а не полноценной угрозой, используемой в реальных атаках.
Буткиты – это вредоносное ПО, предназначенное для заражения процесса загрузки компьютера, загружающееся перед операционной системой и позволяющее получить контроль над системой на очень низком уровне.
Преимущество такой практики заключается в том, что буткиты могут обходить инструменты безопасности, работающие на уровне операционной системы, и модифицировать системные компоненты или внедрять вредоносный код без риска обнаружения.
Исследователи ESET, обнаружившие Bootkitty, предупреждают, что его существование – это значительная эволюция в области угроз, связанных с буткитами UEFI, несмотря на текущие реальные последствия.
Буткит для Linux в процессе создания
ESET обнаружила Bootkitty после изучения подозрительного файла (bootkit.efi), загруженного на VirusTotal в ноябре 2024 года.
Проведя анализ, ESET подтвердила, что это первый случай, когда буткит для Linux UEFI обходит проверку подписи ядра и загружает вредоносные компоненты в процессе загрузки системы.
Bootkitty опирается на самоподписанный сертификат, поэтому не запускается на системах с включенной Secure Boot и нацелен только на некоторые дистрибутивы Ubuntu.
Кроме того, жестко закодированные смещения и упрощенное сопоставление байт-шаблонов делают его пригодным только для определенных версий GRUB и ядра, поэтому он не подходит для широкого развертывания.
ESET также отмечает, что вредоносная программа содержит множество неиспользуемых функций и плохо справляется с совместимостью версий ядра, что часто приводит к сбоям в работе системы.
Баги вредоносной программы и тот факт, что телеметрия ESET не обнаруживает никаких признаков Bootkitty на живых системах, привели исследователей к выводу, что она находится на ранней стадии разработки.
Возможности Bootkitty
Во время загрузки Bootkitty использует протоколы аутентификации безопасности UEFI (EFI_SECURITY2_ARCH_PROTOCOL и EFI_SECURITY_ARCH_PROTOCOL) для обхода проверок целостности Secure Boot, обеспечивая загрузку буткита независимо от политик безопасности.
Далее он подключает различные функции GRUB, такие как „start_image“ и „grub_verifiers_open“, чтобы манипулировать проверками целостности двоичных файлов загрузчика, включая ядро Linux, отключая проверку подписи.
Затем Bootkitty перехватывает процесс распаковки ядра Linux и подключает функцию „module_sig_check“. Это заставляет ее всегда возвращать успех при проверке модулей ядра, что позволяет вредоносной программе загружать вредоносные модули.
Кроме того, она заменяет первую переменную окружения на „LD_PRELOAD=/opt/injector.so“, чтобы вредоносная библиотека внедрялась в процессы при запуске системы.
Весь этот процесс оставляет после себя следы, которые по мнению ESET свидетельствуют о процессе активной разработки Bootkitty. И в финальной версии таких следов не будет.
Исследователи также отметили, что тот же пользователь, который загрузил Bootkitty на VT, также загрузил неподписанный модуль ядра под названием „BCDropper“, но имеющиеся доказательства слабо связывают эти два процесса.
BCDropper загружает ELF-файл под названием „BCObserver“, модуль ядра с функциями руткита, который скрывает файлы, процессы и открывает порты в зараженной системе.
Обнаружение этого типа вредоносного ПО наглядно иллюстрирует, как злоумышленники разрабатывают вредоносное ПО для Linux.
Индикаторы компрометации (IoCs), связанные с Bootkitty, были опубликованы в репозитории на GitHub.
Комментарии (0)