Введение
Знание — наше лучшее оружие в борьбе с киберпреступностью. Представление о том, как действуют и какими инструментами пользуются те или иные группировки, помогает нам грамотно выстраивать защиту и расследовать инциденты. В этом отчете мы подробно рассмотрим историю группы Cuba и тактики, инструменты и методы атаки злоумышленников. Надеемся, что эта статья поможет вам быть на шаг впереди подобных угроз.
Группировка Cuba Ransomware
Операции группировки Cuba впервые попали нам на глаза в конце 2020 года. Тогда злоумышленники еще не назывались Cuba, а действовали под алиасом Tropical scorpius.
Группировка нацелена в первую очередь на организации в США, Канаде и Европе. На ее счету несколько громких атак, в том числе на нефтегазовые компании, финансовые сервисы, государственные учреждения и поставщиков медицинских услуг.
Как и большинство известных вымогателей последних лет, Cuba шифрует файлы жертв и требует выкуп в обмен на ключ дешифрования. Группировка известна тем, что использует сложные тактики и методы для проникновения в сети своих жертв, включая эксплуатацию уязвимостей в программном обеспечении и методы социальной инженерии. Также известно, что группа использует скомпрометированные соединения по протоколу удаленного рабочего стола (RDP) для получения доступа к сетям.
Точное происхождение Cuba и личности членов группы неизвестны, но некоторые исследователи считают, что она может быть преемницей другой известной группы вымогателей под названием Babuk. При этом, как и многие другие вымогатели, Cuba работает по модели «программы-вымогатели как услуга» (RaaS), где партнеры могут использовать шифровальщик и инфраструктуру в обмен на долю от выкупа.
За время своего существования группировка несколько раз меняла название. На данный момент нам известны следующие псевдонимы, под которыми она действовала:
- ColdDraw
- Tropical scorpius
- Fidel
- Cuba
В феврале 2023 года мы обнаружили новый псевдоним группы — V is Vendetta, который не укладывается в любимую злоумышленниками «кубинскую» тематику. Возможно, это самоназвание одного из подразделений или партнеров группировки.
Связь этого алиаса с Cuba прослеживается достаточно явно — сайт «новой» группы располагается прямо на домене группировки Cuba:
http[:]//test[.]cuba4ikm4jakjgmkezytyawtdgr2xymvy6nvzgw5cglswg3si76icnqd[.]onion/
На момент написания статьи группировка Cuba остается активной, и мы продолжаем узнавать о новых жертвах этих вымогателей.
Виктимология
В этом разделе мы опирались на информацию, добровольно предоставленную нашими пользователями, а также данные о жертвах группировки из открытых источников, таких как отчеты других вендоров защитных решений и публикации в блоге вымогателей.
За время своей активности группировка успела атаковать множество компаний по всему миру. При этом злоумышленникам не важно, к какой индустрии принадлежит жертва: среди пострадавших организаций есть, к примеру, предприятия розничной торговли, финансовые и логистические сервисы, государственные учреждения, производственные предприятия и так далее. С географической точки зрения чаще всего от действий группировки страдали компании из США. Также известно о жертвах Cuba в Канаде, Европе, Азии и Австралии.
Шифровальщик
Шифровальщик Cuba представляет собой одиночный файл без дополнительных библиотек. Стоит отметить, что в образцах часто подделана временная метка компиляции. Так, к примеру, временная метка образцов, найденных в 2020 году, была 4 июня 2020 года, а более новые якобы скомпилированы 19 июня 1992 года.
Модель вымогательства
На сегодняшний день существует четыре модели вымогательства с точки зрения инструментов давления на жертву:
- Единичная модель — это шифрование данных с требованием выкупа только за их расшифровку.
- Двойное вымогательство: помимо шифрования злоумышленники похищают чувствительную информацию организации. В случае неуплаты выкупа они грозятся не только не дать жертве ключи для расшифровки данных, но и опубликовать украденную информацию в Сети. Эта модель является самой распространенной среди группировок шифровальщиков.
- Тройное вымогательство: к методам двойного вымогательства добавляется угроза сделать инфраструктуру жертвы недоступной извне посредством DDoS-атаки. Эта схема получила массовое распространение после того, как группировка LockBit стала мишенью DDoS-атаки, предположительно со стороны одной из жертв. Злоумышленники на своей шкуре поняли, что DDoS — эффективный метод давления, о чем открыто заявили, подав пример другим вымогателям. Стоит, однако, отметить, что единичные случаи тройного вымогательства встречались и до этого.
- Четверная модель является самой редкой, так как подразумевает максимальное давление на жертву и требует больших затрат, чем прочие модели. В дополнение ко всем описанным ранее методам четверное вымогательство предполагает распространение информации о взломе среди инвесторов, акционеров и клиентов компании-жертвы. При этом злоумышленники могут обходиться без DDoS-атак. Примером такой схемы может послужить недавний взлом американского частного университета Bluefield. Через систему оповещений о чрезвычайных ситуациях группа AvosLocker разослала студентам и преподавателям СМС- и почтовые сообщения о том, что были похищены их персональные данные, а также призывы не верить руководству вуза, скрывающему масштабы взлома, и как можно скорее предать ситуацию огласке.
Группа Cuba использует классическую модель двойного вымогательства. Злоумышленники шифруют данные, используя симметричный алгоритм Xsalsa20, ключи которого, в свою очередь, шифруют асимметричным алгоритмом RSA-2048. Такая схема шифрования называется гибридной и является криптостойкой, то есть расшифровать данные без ключа невозможно.
Образцы Cuba избегают шифрования файлов с расширением .exe, .dll, .sys, .ini, .lnk, .vbm и .cuba, а также следующих папок:
- \windows\
- \program files\microsoft office\
- \program files (x86)\microsoft office\
- \program files\avs\
- \program files (x86)\avs\
- \$recycle.bin\
- \boot\
- \recovery\
- \system volume information\
- \msocache\
- \users\all users\
- \users\default user\
- \users\default\
- \temp\
- \inetcache\
- \google\
Кроме того, шифровальщик экономит время за счет того, что не шифрует все файлы на устройстве, кроме исключений, а ищет документы MS Office, изображения, упакованные файлы и т. д. в директории %AppData%\Microsoft\Windows\Recent\. Также он останавливает все SQL-службы, чтобы зашифровать все доступные базы данных. Шифровальщик ищет данные, доступные как локально, так и по сети через сетевые папки.
Помимо шифрования группировка крадет чувствительную информацию, которую обнаруживает в организации жертвы. Типы данных, интересующие злоумышленников, зависят от индустрии, к которой принадлежит атакуемая компания, но в основном злоумышленники эксфильтруют:
- Финансовые документы
- Банковские расчеты
- Информацию о счетах компании
- Исходные коды, если компания занимается разработкой программного обеспечения
Арсенал
Группировка использует как всем известные классические средства для получения учетных данных, такие как mimikatz, так и самописное ПО. Также злоумышленники эксплуатируют уязвимости в ПО жертвы — в основном это известные уязвимости, такие как связки ProxyShell и ProxyLogon для атак на серверы Exchange, а также уязвимости для эксплуатации сервиса резервного копирования и восстановления данных Veeam.
- Bughatch
- Burntcigar
- Cobeacon
- Hancitor (Chanitor)
- Termite
- SystemBC
- Veeamp
- Wedgecut
- RomCOM RAT
- Mimikatz
- PowerShell
- PsExec
- Remote Desktop Protocol
ProxyShell:
- CVE-2021-31207
- CVE-2021-34473
- CVE-2021-34523
ProxyLogon:
- CVE-2021-26855
- CVE-2021-26857
- CVE-2021-26858
- CVE-2021-27065
Уязвимости Veeam:
- CVE-2020-1472
Прибыль злоумышленников
Проанализировав Bitcoin-кошельки, которые злоумышленники оставляют в записках с требованием выкупа (ransom note) в системах жертв, мы выяснили, что общая сумма входящих и исходящих транзакций на них составляет более 3600 BTC, или более 103 000 000 долларов (по курсу конвертации на момент подсчета: 1 BTC = 28 624 USD). При этом стоит отметить, что группировка владеет большим количеством кошельков и постоянно переводит средства между ними, а также активно пользуется биткоин-миксерами — сервисами, пропускающими биткоины через серию анонимных транзакций, — для того чтобы их происхождение было сложнее отследить в цепочке.
Расследование инцидента с участием Cuba и анализ вредоносного ПО
Хост SRV_STORAGE
19 декабря мы заметили подозрительную активность на одном из хостов заказчика (назовем его SRV_STORAGE). В событиях телеметрии мы увидели, что на хосте были созданы три подозрительных файла:
Проанализировав содержимое файла kk65.bat, мы выяснили, что он выступает в качестве стейджера. Он инициирует всю дальнейшую активность, запуская процесс rundll32 и подгружая в него библиотеку komar65, в которой происходит запуск экспортируемой функции DLLGetClassObjectGuid.
Давайте взглянем на то, что находится внутри этой подозрительной DLL.
Bughatch
Библиотека komar65.dll также известна как зловред под названием Bughatch (это имя ей присвоила компания Mandiant в своем отчете).
При анализе библиотеки мы первым делом обратили внимание на путь до PDB-файла. В нем присутствует папка Mosquito, что в переводе на русский означает «комар». Русское слово «комар» используется в названии DLL, что косвенно указывает на наличие в группировке русскоговорящих участников.
В коде динамической библиотеки мы видим Mozilla/4.0 в качестве аргумента для user agent, который библиотека использует для создания сетевого HTTP-соединения с двумя адресами:
- С google.com. Очевидно, это подключение используется для проверки интернет-соединения с внешними IP-адресами.
- С командным центром злоумышленников. Подключиться к C2 зловред пытается, если первое пробное соединение было успешным.
Аналогичную активность мы наблюдали на зараженном хосте. После установки соединения с сервером атакующих Bughatch начал сбор информации о сетевых ресурсах.
Проанализировав C2-серверы атакующих, мы обнаружили, что с них помимо самого Bughatch распространяются еще и модули, расширяющие функциональность этого зловреда. Среди них есть, в частности, модуль, собирающий информацию с зараженной системы и отправляющий ее на сервер в виде HTTP POST-запроса.
Можно сказать, что Bughatch представляет собой своего рода бэкдор, который разворачивается в памяти процесса и выполняет встроенный блок шелл-кода в выделенном ему пространстве памяти, используя API Windows (VirtualAlloc, CreateThread, WaitForSingleObject), а затем подключается к серверу C2 и ожидает дальнейших команд. В частности, C2 может отправить команду на скачивание дополнительного ПО, в том числе Cobalt Strike Beacon, Metasploit, а также других модулей Bughatch.
Хост SRV_Service
Veeamp
Спустя некоторое время мы обнаружили запуск вредоносного файла на соседнем хосте (назовем его SRV_Service):
Veeamp.exe представляет собой кастомный инструмент для дампа учетных данных, написанный на языке C#. При помощи уязвимостей в службе Veeam (решение для резервного копирования данных) он пытается подключиться к базе данных SQL под названием VeeamBackup и сделать дамп учетных данных из базы.
Инструмент Veeamp эксплуатирует следующие уязвимости в сервисе Veeam: CVE-2022-26500, CVE-2022-26501, CVE-2022-26504. Первые две уязвимости позволяют удаленно выполнить произвольный код неавторизованному пользователю, а последняя — пользователям, уже присутствующим на домене. После успешной эксплуатации любой из них зловред отображает в панели управления следующие данные:
- Имя пользователя
- Зашифрованный пароль
- Расшифрованный пароль
- Описание пользователя из таблицы Credentials сервиса Veeam (к какой группе принадлежит пользователь/сервис, какие у него права и т. д.)
Зловред Veeamp использует не только группа Cuba. Мы видели его и в атаках других вымогательских группировок, таких как Conti и Yanluowang.
После завершения активности Veeamp мы наблюдали на хосте SRV_Service активность, аналогичную обнаруженной на хосте SRV_STORAGE — с использованием зловреда Bughatch:
Как и на SRV_STORAGE, в папку temp были сброшены три файла, которые затем были выполнены в той же последовательности и подключились к тем же URL-адресам.
Драйвер Avast Anti-Rootkit
После того как Bughatch установил соединение с C2, мы увидели использование одной из набирающих популярность среди злоумышленников техник — Bring Your Own Vulnerable Driver (BYOVD).
Злоумышленники устанавливают уязвимый драйвер внутри системы и впоследствии используют его для выполнения различных задач — например, завершения процессов, которые интересуют атакующих, или обхода средств защиты за счет повышения привилегий до уровня ядра.
Уязвимые драйверы привлекают злоумышленников тем, что все они имеют высокий уровень доступа к системе, поскольку работают в режиме ядра. Более того, так как легитимный драйвер имеет цифровую подпись, он не вызовет никаких подозрений у решений безопасности, что позволит атакующим дольше оставаться незамеченными.
В рамках описываемой атаки в папке temp было создано три файла:
- aswarpot.sys — это легальный антируткит-драйвер Avast, содержащий две уязвимости: CVE-2022-26522 и CVE-2022-26523. Они позволяют запустить код на уровне ядра от имени пользователя с ограниченными правами.
- KK.exe — это зловред, также известный как Burntcigar. Найденный нами файл является новым образцом этого ВПО, который использует уязвимый драйвер для завершения процессов.
- батч-скрипт av.bat — представляет собой стейджер для запуска службы ядра драйвером Avast и выполнения Burntcigar.
Как показал анализ BAT-файла и телеметрии, через утилиту sc.exe av.bat создает службу под названием aswSP_ArPot2 с указанием пути к драйверу в директории С\windows\temp\ и типа службы — служба ядра. Затем при помощи все той же утилиты sc.exe BAT-файл запускает сначала эту службу, опять же, , а потом исполняемый файл KK.exe, который подключается к уязвимому драйверу.
Burntcigar
Первое, что мы заметили при разборе вредоноса Burntcigar, — это путь до PDB-файла, содержащий интересную папку Musor. Ее название — еще один индикатор того, что участники группы Cuba могут быть русскоговорящими.
В ходе анализа мы также обнаружили, что наш образец является новой версией вредоносного ПО Burntcigar, которая на момент инцидента не детектировалась защитными решениями. Вероятно, злоумышленники обновили зловред, так как после предыдущих атак многие вендоры без проблем могли обнаружить логику работы старых версий.
Как вы можете заметить на скриншоте ниже, в нашем образце все данные о процессах, которые должны быть завершены, зашифрованы, а в старой версии имена всех процессов, представляющих интерес для атакующих, можно было найти в открытом виде.
Вредоносная программа ищет имена процессов, которые связаны с именами популярных AV- или EDR-решений, а затем помещает их processID в стек, чтобы впоследствии завершить их.
Для обращения к уязвимому драйверу Burntcigar использует функцию DeviceIoControl, в параметрах которой указан адрес уязвимого участка кода драйвера Avast. В этом участке кода содержится функция ZwTerminateProcess, которую злоумышленники и используют для завершения процессов.
К счастью, самозащита нашего продукта смогла справиться со зловредом и заблокировать все хуки к уязвимому драйверу.
Позже мы обнаружили такую же активность с использованием антируткит-драйвера Avast на сервере Exchange и хосте SRV_STORAGE. В обоих случаях, как и на хосте SRV_Service, для установки уязвимого драйвера и последующего запуска Burntcigar использовался BAT-файл.
Хост SRV_MAIL (сервер Exchange)
20 декабря по нашей просьбе заказчик добавил в мониторинг сервер Exchange. Вероятнее всего, этот хост выступал точкой входа в инфраструктуру заказчика, так как на сервере отсутствовали важные обновления и он был уязвим к большинству векторов первоначального доступа группировки. В частности, на SRV_MAIL не были закрыты уязвимости ProxyLogon, ProxyShell и Zerologon. Поэтому мы предполагаем, что злоумышленники проникли в сеть заказчика именно через Exchange-сервер.
Мы заметили аналогичную активность, что и на предыдущих хостах, со стороны пользователя SqlDbAdmin.
Также мы обнаружили, что злоумышленники использовали легитимный инструмент gotoassistui.exe для передачи вредоносных файлов между пораженными хостами.
GoToAssist — это инструмент для поддержки сессий удаленного рабочего стола. Его часто используют в командах техподдержки. Однако распространено и применение этого программного обеспечения в качестве утилиты для транспортировки файлов между различными системами в обход любых решений по безопасности и команд по реагированию.
Помимо этого, мы обнаружили выполнение новых образцов зловреда Bughatch. В них были использованы немного другие имена файлов, экспортируемые функции и C2-серверы, так как на момент их запуска наши системы уже успешно блокировали предыдущие версии зловреда.
SqlDbAdmin
Кто же такой этот SqlDbAdmin? Ответить на этот вопрос нам помогла подозрительная DLL (addp.dll), которую мы вручную нашли на одном из скомпрометированных хостов.
Мы обнаружили, что она использовала функцию WIN API NetUserAdd для создания интересующего нас пользователя. В коде библиотеки жестко прописаны имя и пароль этого пользователя.
Продолжая анализировать эту динамическую библиотеку, мы обнаружили, что в ней используется функция RegCreateKey для включения RDP-сессий для созданного пользователя через параметр реестра. После этого библиотека скрывает пользователя путем добавления его в ветку Special Account в реестре. Это означает, что пользователь не будет отображаться на экране входа в систему. Это интересная и достаточно необычная техника для закрепления в системе. В большинстве случаев злоумышленники используют скрипты для добавления нового пользователя, которые почти всегда обнаруживаются защитными решениями в системе.
Cobalt Strike
На сервере Exchange мы обнаружили выполнение новой подозрительной DLL (ion.dll) в рамках процесса rundll32 с необычными параметрами запуска. Изначально мы решили, что эта активность аналогична замеченной ранее активности с использованием Bughatch. Однако в ходе дальнейшего анализа мы выяснили, что библиотека представляет собой Cobalt Strike Beacon.
В коде ion.dll мы обратили внимание на параметры выполнения и функцию, которая использует конфигурацию Cobalt Strike. Также мы увидели, что библиотека применяет функцию VirtualAlloc для выделения памяти внутри процесса, где впоследствии будет выполняться полезная нагрузка Cobalt Strike Beacon.
Все данные о конфигурации были зашифрованы. Однако мы обнаружили функцию, которая использовалась для их расшифровки. Для того чтобы найти командный сервер Cobalt Strike, мы решили исследовать дамп памяти процесса rundll32 c загруженной в него ion.dll, запущенного с теми же параметрами, что и на хосте жертвы.
Узнав адрес командного сервера, мы смогли обнаружить в телеметрии историю взаимодействия хоста с этим сервером. После подключения к C2 два подозрительных файла были загружены на зараженный сервер в папку Windows, а затем выполнены. К сожалению, нам не удалось получить эти файлы и проанализировать их: так как на предыдущем шаге злоумышленники не смогли отключить систему защиты, эти файлы были успешно удалены и с зараженного хоста. Однако мы предполагаем, что это и есть программа-шифровальщик.
Заказчик оперативно изолировал пострадавшие хосты и передал инцидент команде Incident Response «Лаборатории Касперского» для дальнейшего реагирования и поиска возможных артефактов. Активность группировки в системе клиента на этом закончилась: хосты не были зашифрованы, поскольку клиент следовал нашим советам и указаниям и благодаря этому сумел вовремя отреагировать на инцидент.
Новое вредоносное ПО
Мы нашли на VirusTotal новые образцы вредоносного ПО группировки Cuba с теми же метаданными файлов, что и в описанном выше инциденте. Некоторые из этих образцов не были обнаружены ни одним из вендоров. Мы проанализировали все сэмплы. Как можно видеть на скриншоте ниже, они представляют собой новые версии вредоносного ПО Burntcigar, использующие зашифрованные данные для обхода антивируса. Мы создали Yara-правила для поиска этих образцов, которые приводим в приложении к этой статье.
BYOVD (Bring Your Own Vulnerable Driver)
Также давайте рассмотрим подробнее технику с использованием уязвимых драйверов, которую мы наблюдали в ходе расследования инцидента и которая в последнее время набирает все большую популярность, в связи с чем ее берут на вооружение как различные APT-группировки, так и вымогатели.
Bring Your Own Vulnerable Driver (BYOVD) — это атака, при которой злоумышленники используют легитимные подписанные уязвимые драйверы для выполнения вредоносных действий в системе. При успешной атаке злоумышленник, используя уязвимости в коде драйверов, может выполнить любые вредоносные действия на уровне ядра!
Чтобы понять, почему эта атака одна из наиболее опасных, давайте немного освежим знания и поговорим про то, что представляют собой драйверы. Драйверы — это программное обеспечение, которое выступает в качестве посредника между операционной системой и устройством. Драйвер переводит инструкции операционной системы в команды, которые устройство может понять и выполнить. Драйверы также разрабатываются для обеспечения поддержки программных приложений или функций в операционной системе, которые не присутствуют в ней изначально. На рисунке можно увидеть, что драйвер выступает некой прослойкой между пользовательским режимом и режимом ядра.
Приложения, работающие в пользовательском режиме, имеют меньше привилегий для управления системой. Они могут получить доступ только к виртуализированному участку памяти, который изолирован и защищен от остальной системы. Драйвер же работает внутри памяти ядра и может выполнять любые операции, как и собственно ядро. Драйвер может получать доступ к критически важным структурам безопасности и изменять их. Эти изменения могут открыть дорогу для таких атак, как повышение привилегий, отключение служб безопасности, отвечающих за защиту операционной системы, произвольные чтение и запись.
В 2021 году этой техникой воспользовалась группировка Lazarus, которая с помощью драйвера компании Dell, содержащего уязвимость CVE-2021-21551, получала доступ к записи данных в память ядра и отключала защитные функции Windows.
От атак с использованием легитимных драйверов нет стопроцентной защиты, так как в теории любой драйвер может оказаться уязвим. Компания Microsoft составила список рекомендаций по защите от подобного рода техники:
- включить защиту виртуализации (Hypervisor-Protected Code Integrity);
- включить функцию Memory Integrity;
- включить проверку цифровой подписи драйвера;
- использовать список запрещенных драйверов.
Однако по данным исследований, эти рекомендации неактуальны, так как даже при всех включенных средствах защиты Windows, атаки подобного типа все равно заканчиваются успехом.
Для противостояния этой технике многие вендоры решений безопасности начали встраивать в них модуль «самозащиты», который не дает ВПО завершить их процессы и успешно блокирует все попытки эксплуатации уязвимых драйверов. Самозащита есть и в наших решениях, и в ходе инцидента она показала свою эффективность.
Заключение
Группировка Cuba использует широкий арсенал общедоступных и самописных инструментов, которые оперативно обновляются, а также различные тактики и методы, в том числе довольно опасные, такие как, например, BYOVD. Для борьбы с атаками такого уровня сложности необходимы продвинутые технологии, способные выявлять новейшие угрозы и защищать себя от отключения, а также обширная, постоянно пополняемая база данных об угрозах, которая позволяет обнаруживать вредоносные артефакты в ручном режиме.
Как можно видеть на примере описанного в этой статье инцидента, расследование реальных кибератак и реагирование на инциденты, в том числе в рамках сервиса Managed Detection and Response (MDR), — один из источников наиболее актуальных данных о тактиках, методах, процедурах и инструментах злоумышленников. В частности, расследование позволило нам обнаружить новые, никем не детектируемые образцы вредоносного ПО группы Cuba, а также артефакты, указывающие на то, что как минимум некоторые из злоумышленников владеют русским языком.
При этом стоит отметить, что эффективное расследование и реагирование на инциденты невозможно без изначальных знаний об актуальных киберугрозах, которые можно получить, в частности, в рамках сервиса Threat Intelligence. В «Лаборатории Касперского» команды Threat Intelligence и MDR тесно взаимодействуют друг с другом, постоянно обмениваясь данными и совершенствуя предоставляемые услуги.
Приложение
Правила Sigma и YARA: https://github.com/BlureL/SigmaYara-Rules
Индикаторы компрометации: PDF
Матрицы MITRE ATT&CK: PDF
От карибских берегов до ваших устройств: разбор угрозы Cuba Ransomware