Технический анализ варианта Linux-вымогателя Lockbit, ориентированного на атаки серверов ESXi, провели исследователи Hack & Cheese. Несмотря на то, что образец был первоначально задокументирован TrendMicro ещё в 2022 году, исследование проливает свет на эволюцию тактик реверс-инжиниринга в контексте современных Linux-угроз. Автор подчёркивает, что цель работы - исключительно исследовательская, а группировка Lockbit к моменту публикации уже нейтрализована правоохранителями.
Описание
Динамический анализ и обфускация
Образец демонстрирует классические, но эффективные техники противодействия отладке. Через системный вызов "ptrace" с опцией "PTRACE_ATTACH" вредонос пытается присоединиться к родительскому процессу. Если операция блокируется (например, при наличии отладчика), процесс завершается с кодом ошибки. Для обхода исследователи модифицировали условные переходы в отладчике.
Строки в бинарнике скрыты через XOR-обфускацию с базовым значением "0x39" (57). Алгоритм применяет побайтовый rolling XOR до нулевого символа. При декодировании обнаружены ключевые элементы: меню помощи ("--help"), шаблоны логов, команды для управления виртуальными машинами (включая "vm-support", "vmdumper", "vim-cmd") и тексты ransom-нот.
Функциональные особенности
Архитектура управляется через парсинг аргументов командной строки. Ключевые опции включают:
- "--log" с выводом в "/tmp/locklog" и/или stdout;
- "--daemonize" для фонового режима с созданием lock-файла "/tmp/locker.pid";
- "--wipe" для затирания свободного пространства через запись нулевых блоков;
- "--nostop" для игнорирования работающих ВМ.
При активации "--wipe" вредонос выполняет "df -h", извлекает точки монтирования и для каждой создаёт временный файл, заполняя свободные блоки нулями. Интересно, что логика парсинга содержит уязвимость: для корневого раздела ("/") алгоритм некорректно обрабатывает строку целиком.
ESXi-специфика
Целевая платформа идентифицируется через лог-сообщение "LockBit Linux/ESXi locker V: 1.0". Перед шифрованием проверяется наличие системных утилит ESXi. При их отсутствии выводятся инструкции "--help" и процесс завершается. Критически важные этапы:
- Активация SSH через "vim-cmd hostsvc/enable_ssh" без установки бэкдоров;
- Приостановка ВМ командой "esxcli vm process kill --type=force --world-id=$wid" (до 9 попыток на машину);
- Поиск каталогов ВМ через "vm-support --listvms" и рекурсивное шифрование файлов.
Криптографический механизм
Шифрование реализовано со статически слинкованной libsodium. Анализ выявил трёхуровневый процесс:
- Генерация уникального 128-битного ключа на файл через "randombytes_buf";
- Упаковка ключа в «криптобокс» через "crypto_box_seal" с использованием хардкодного публичного ключа злоумышленников;
- Непосредственное шифрование AES с T-таблицами (4 таблицы по 1024 байта + S-box). Реализация идентифицирована как оптимизированная версия Rijndael из открытых источников.
Автор столкнулся со сложностями при идентификации библиотечных функций из-за отсутствия символов и агрессивной инлайнинга. Ключевую роль сыграл анализ перекрёстных ссылок на строки (например, "sysrandom") и глобальные структуры данных. Помощь криптографа Жан-Филиппа Омассона позволила верифицировать AES-реализацию.
Последействие и статистика
В каждый зашифрованный каталог помещается файл "!!!-Restore-My-Files-!!!" с требованием выкупа. В записке упоминаются «миллионы долларов» для корпоративных инсайдеров и гарантии анонимности через Tox-мессенджер. По завершении работы вредонос выводит сводку в лог: количество обработанных файлов и ВМ, общий объём данных и время выполнения.
Заключение
Исследование подтверждает рост сложности Linux-вредоносов: от примитивных DDoS-ботов до целевых ESXi-вымогателей. Хотя образец содержит артефакты (обильное логгирование, примитивный парсинг df), его криптографическая часть соответствует современным стандартам. Автор отмечает, что техники реверс-инжиниринга, включая анализ потоков данных и ручную идентификацию библиотек, остаются критически важными для понимания подобных угроз. Хэш анализируемого бинарника опубликован в блоге для воспроизводимости исследования.
Индикаторы компрометации
SHA256
- f3a1576837ed56bcf79ff486aadf36e78d624853e9409ec1823a6f46fd0143ea