Новая вредоносная программа-руткит для Linux под названием Pumakit использует техники маскировки и расширенные методы повышения привилегий для сокрытия своего присутствия в системах.
Вредоносная программа представляет собой многокомпонентный набор, включающий в себя дроппер, резидентные исполняемые файлы, руткит модуля ядра и руткит пользовательского пространства общего объекта.
Компания Elastic Security обнаружила Pumakit в подозрительной двоичной загрузке («cron») на VirusTotal от 4 сентября 2024 года. Исследователи не смогли установить, кто использует угрозу и на что она нацелена.
Как правило, эти инструменты используются злоумышленниками, нацеленными на критически важную инфраструктуру и корпоративные системы с целью шпионажа, финансовых краж и операций по нарушению работы.
Pumakit
Pumakit использует многоступенчатый процесс заражения, начинающийся с дроппера под названием «cron», который выполняет из памяти встроенные полезные нагрузки («/memfd:tgt» и «/memfd:wpn»).
Полезная нагрузка «/memfd:wpn» выполняется в дочернем процессе и производит проверки среды и манипуляции с образом ядра и в конечном итоге развертывает модуль руткита LKM («puma.ko») в ядре системы.
В руткит LKM встроен общий объект Kitsune («lib64/libs.so»), действующий как пользовательский руткит, который внедряется в процессы с помощью «LD_PRELOAD» для перехвата системных вызовов на уровне пользователя.
Цепочка заражения Pumakit
Скрытое повышение привилегий
Руткит следует условной активации, проверяя определенные символы ядра, состояние безопасной загрузки и другие предварительные условия перед загрузкой.
Elastic утверждает, что Puma использует функцию kallsyms_lookup_name() для манипулирования поведением системы. Это указывает на то, что руткит был разработан только для ядер Linux до версии 5.7, поскольку более новые версии больше не экспортируют эту функцию и, следовательно, не могут использоваться другими модулями ядра.
Исследователи Elastic Security пояснили:
Способность руткита LKM манипулировать поведением системы начинается с использования таблицы системных вызовов и его зависимости от kallsyms_lookup_name() для разрешения символов.
В отличие от современных руткитов, нацеленных на версии ядра 5.7 и выше, руткит не использует kprobes, что указывает на то, что он разработан для старых ядер.
Puma перехватывает 18 системных вызовов и несколько функций ядра с помощью ftrace, чтобы получить повышение привилегий, выполнение команд и возможность скрывать процессы.
Использование ftrace для перехвата системных вызовов
Функции ядра prepare_creds и commit_creds используются для изменения учетных данных процесса, предоставляя привилегии root определенным процессам.
Выполнение повышения привилегий
Руткит может скрывать свое присутствие от журналов ядра, системных инструментов и антивирусного ПО, а также может скрывать определенные файлы в каталоге и объекты из списков процессов.
Если перехваты прерываются, руткит повторно инициализирует их, гарантируя, что его вредоносные изменения не будут отменены, а модуль не может быть выгружен.
Пользовательский руткит Kitsune SO работает совместно с Puma, расширяя свои механизмы скрытности и контроля на взаимодействия с пользователем.
Он перехватывает системные вызовы на уровне пользователя и изменяет поведение таких функций, как ls, ps, netstat, top, htop и cat, чтобы скрыть файлы, процессы и сетевые соединения, связанные с руткитом
Он также может динамически скрывать любые другие файлы и каталоги на основе критериев, определенных злоумышленником, и делать вредоносные двоичные файлы полностью невидимыми для пользователей и системных администраторов.
Kitsune SO также обрабатывает все коммуникации с сервером управления и контроля (C2), передавая команды руткиту LKM и передавая операторам конфигурацию и системную информацию.
Компания Elastic Security опубликовала не только хэши файлов, но правило YARA, чтобы помочь системным администраторам Linux обнаруживать атаки Pumakit.
Угрозы безопасности
• Основные киберугрозы 2024 года в России: утечки данных, вымогатели и фишинг
• Обнаружен скрытый руткит Pumakit для Linux. Он может использоваться в таргетированных атаках
• Уязвимость OpenWrt Sysupgrade позволяет распространять вредоносные образы прошивки. Обновите свои устройства
• Хакеры используют драйвер Avast Anti-Rootkit для отключения антивирусов
• Системы Ubuntu затронуты уязвимостью «needrestart», которая позволяет получить root-привилегии
• Фейковые ИИ-генераторы видео заражают Windows и macOS вредоносным ПО