Analysis of the Lockbit 2.0 ransomware

17.12.2021
by VirLab team

Общее описание

Lockbit - это хорошо известный и довольно популярный шифровальщик, атаки с участием которого были замечены еще в сентябре 2019 года. Жертвами атак были пользователи и организации стран - США, Китай, Индия, Индонезия, Украина и ряд европейских стран. Он был также известен под именем “ABCD” из-за используемого расширения файлов, после заражения.

В июне 2021 года появилась новая версия шифровальщика под именем Lockbit 2.0. Как и шифровальщик REvil, который был исследован tLab Technologies VirLab и описан в прошлой статье, Lockbit 2.0 распространяется по модели Ransomware-as-a-service (RaaS).

Модель распространения ransomware-as-a-service - представляет собой подписку на получение вредоносного вымогательского ПО. Злоумышленники получают доступ к администраторской веб-панели и возможность сборки вредоносного ПО под разные операционные системы. После получения или покупки доступов к корпоративным/закрытым сетям, атакующие зашифровывают важные данные, удаляют резервные копии и требуют у жертв выкуп за расшифровку данных. Если жертва принимает решение предоставить выкуп за данные, то злоумышленники оплачивают владельцу RaaS сервиса процент от полученной прибыли.

В течении следующих месяц (с июня) наблюдались активные атаки, с использованием Lockbit 2.0 как минимум в Чили, Италии, Великобритании, Австралии, Тайване. Переняв опыт шифровальщиков Ryuk и Egregor, Lockbit 2.0 взял на вооружение технику double extortion. Данная техника нацелена на более эффективный способ убеждения жертвы заплатить выкуп за расшифровку файлов. Если жертва отказывается платить выкуп, операторы шифровальщика угрожают публикацией украденных данных.

В отличии от первой версии, Lockbit 2.0 использует новые способы попадания на компьютер жертвы и может распечатывать требование о выкупе на физическом принтере. В некоторых случаях шифровальщик получал доступ ко внутренним сетям компаний, используя уязвимость в Fortinet FortiOS и FortiProxy с идентификатором CVE-2018-13379

Дополнительный список использованных уязвимостей

Помимо этого, злоумышленники могут использовать ранее украденные аутентификационные данные RDP для доступа к конкретным компьютерам в сети компании. Lockbit 2.0 также содержит код для заражения пользователей Active Directory.

Специалистами компании tLab Technologies был проанализирован шифровальщик Lockbit 2.0 с хэш-суммой:

0545f842ca2eb77bcac0fd17d6d0a8c607d7dbc8669709f3096e5c1828e1c049

Динамический анализ объектов в системе производился на операционной системе с английским языком, так как вредоносное ПО прекращает свою работу на системах с языками русскоговорящих стран. Более подробный список:

Исследование проводилось в контейнерах с отключенной сетью, что является типичной конфигурацией для наших клиентов. В статье описаны наиболее интересный функционал объекта.

Технический анализ

Система tLab успешно идентифицировала вредоносное ПО Lockbit 2.0, присвоив высокий уровень угрозы по результатам статического и динамического анализов.

tLab представляет уровень угрозы в мета-процентах (может быть более 100%), если выше предела опасности (85% по умолчанию) - считается вредоносным (выделяется красным). Предел опасности выставляется администратором tLab.

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

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

На основе обнаруженных индикаторов система автоматически выставила заключение -Malware (Вредоносное ПО).

Для избегания детектирования, шифровальщик динамически загружает используемые библиотеки. Для этого на стеке формируется строка с именем библиотеки.

Для загрузки библиотек, образец динамически получает базовый адрес Kernel32.dll. Kernel32dll загружается в каждый процесс по одному и тому же адресу. Каждый процесс в системе содержит адрес структуры TEB (Thread Environment Block).

Структура TEB описывает текущий поток. Зная адрес TEB можно по цепочке получить базовый адрес Kernel32:
TEB->PEB->Ldr->InLoadOrderModuleList->Flink->kernel32.BaseDll

После получения базового адреса kernel32dll, идет парсинг Export Table для поиска адреса функции LoadLibrary

После получения адреса функции LoadLibrary загружаются все нужные библиотеки. Имена библиотек закодированы алгоритмом XOR:

Имя библиотеки в закодированом в виде:

Имя библиотеки после декодирования:

Загрузка библиотеки:

Одна из загружаемых библиотек - Winspool.drv необходимо для работы с принтерами. Шифровальщик распечатывает требование о выкупе для привлечения внимания

В системе tLab можно выгрузить лог системных вызовов и увидеть работу с принтерами:

Lockbit обходит систему UAC с помощью запуска процесса DLLHost со специальным CLSID:

Также, шифровальщик удаляет теневые копии и бэкапы, чтобы жертва не смогла восстановить зашифрованные данные:

В системе tLab также можно увидеть процессы относящиеся к удалению бэкапов:

Сканирование сети жертвы происходит с помощью отправки ARP пакетов:

После шифрования файлов, вымогательское ПО оставляет требование о выкупе. Система tLab может детектировать изменение экрана: