Компания F.A.C.C.T. зафиксировала новые атаки шпионской группы Cloud Atlas на российское агропромышленное предприятие и исследовательскую госкомпанию. Обе рассылки были перехвачены системой защиты от сложных и неизвестных киберугроз F.A.C.C.T. Managed XDR.
Старая группа, новые темы
Cloud Atlas — прогосударственная APT-группа, специализирующаяся на кибершпионаже и краже конфиденциальной информации. По данным исследователей, активна как минимум с 2014 года. Чаще других целями Cloud Atlas становились промышленные предприятия и госкомпании в России, Беларуси, Азербайджане, Турции и Словении. В качестве основного вектора атаки используется точечная почтовая рассылка с вредоносным вложением.
В рамках новой кампании злоумышленники использовали адреса, зарегистрированные через популярные почтовые сервисы antonowadebora@yandex.ru и mil.dip@mail.ru и две актуальные темы — поддержку участников СВО и воинский учет.
В первом письме злоумышленники от имени представителей “Московской городской организации Общероссийского профессионального союза работников государственных учреждений” предлагают организовать сбор открыток и поздравлений участникам СВО и членам их семей. Указанные в письме контакты реальные — их можно найти в свободном доступе.
В другой почтовой рассылке злоумышленники представляются “Ассоциацией Учебных Центров” и используют актуальную тему изменений в законодательстве о введении воинского учета и бронировании граждан, пребывающих в запасе.
Киллчейн атаки
Киллчейн данной атаки схож с тем, что был описан в отчете компании Positive Technologies, правда за исключением использования альтернативных потоков данных.
Рассмотрим элементы киллчейна данной атаки более подробно на примере одного из документов «№ 27807 от 20.11.2023.doc»
Документ
При открытии пользователем документа из вложения электронного письма происходит загрузка по ссылке удаленного шаблона. Ссылка для загрузки шаблона располагается в потоке 1Table. На рисунке ниже представлен пример фрагмента содержимого потока 1Table документа «№ 27807 от 20.11.2023.doc»
Шаблон
Загружаемый по ссылке шаблон является RTF-файлом, содержащим эксплойт уязвимости CVE-2017-11882. В результате эксплуатации данной уязвимости происходит запуск шелл-кода, предназначенного для загрузки HTA-файла по ссылке и его последующего выполнения.
RTF-файл имеет встроенный объект с именем «viewkind», содержащий шелл-код в зашифрованном виде.
Шелл-код расшифровывает 528 байт, которые располагаются после двух инструкций «inc edi», с помощью алгоритма XOR с двухбайтовым ключом, заданным в теле шелл-кода (в данном случае 0x59FC).
Стоит отметить, что адрес ссылки, по которой происходит загрузка вредоносного HTA-файла, хранится в теле шелл-кода в зашифрованном виде и для его расшифровки используется алгоритм XOR с однобайтовым ключом (в данном случае 0x16).
HTA-файл
HTA-файл обфусцирован и обладает следующими функциональными возможностями:
- создание файла «%APPDATA%\Microsoft\Windows\khaki.xml”;
- создание файлов в альтернативных потоках данных файла khaki.xml: khakiing.vbs, khaki.vbs, khaki.hxn, khakiinit.vbs;
- добавление в автозагрузку VBS-скрипта khaki.xml:khaki.vbs: [HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] tzautoupdate = «wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khaki.vbs»»
- запуск khaki.xml:khakiing.vbs с помощью команды: «wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khakiing.vbs»»;
- запуск khaki.xml:khakiinit.vbs с помощью команды: «wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khakiinit.vbs»».
Фрагмент форматированного содержимого HTA-файла представлен на рисунке ниже.
VBS-скрипты
Анализируемые VBS-скрипты обфусцированы и содержатся в альтернативных потоках данных файла khaki.xml.
khaki.xml:khakiing.vbs
khakiing.vbs идентичен файлу khaki.vbs и отвечает за расшифровку содержащегося VBS-кода в khaki.xml:khaki.hxn и его запуск.
khaki.xml:khaki.hxn
Расшифрованный VBS-код файла khaki.xml:khaki.hxn отвечает за декодирование содержащейся в нем полезной нагрузки и ее запуск.
Полезная нагрузка из khaki.xml:khaki.hxn
Декодированная полезная нагрузка представляет VBS-код, предназначенный для загрузки следующей стадии с сервера атакующих и передачи ей управления. Следующая стадия представляет VBS-код. К сожалению, на момент исследования файл следующей стадии был недоступен.
Функциональные возможности декодированной полезной нагрузки из khaki.hxn:
- использование COM-объекта Msxml2.ServerXMLHTTP.6.0 для отправки сетевого запроса на сервер злоумышленников;
- обращение к реестру ОС с помощью WMI (Windows Management Instrumentation) для получения системного Proxy-сервера и его использования в сетевом взаимодействии с сервером злоумышленников (в случае, если Proxy-сервер не задан, Proxy не используется);
- получение значения параметра USERDOMAIN из ключа реестра [HKCU\Volatile Environment] (USERDOMAIN может содержать название домена, либо, если компьютер не входит в домен, название компьютера);
- проверка существования и добавление в автозагрузку VBS-скрипта khaki.xml:khaki.vbs: [HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] tzautoupdate = «wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khaki.vbs»», в случае, если параметр tzautoupdate отсутствует в реестре системы;
- отправка GET-запроса для получения по ссылке hxxps://avito-service[.]net/service/37.html/bersim следующей стадии, используя User-Agent: «Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) %USERDOMAIN% Chrome/116.0.0.0 Safari/537.36 Edg/116.0.0.0», где %USERDOMAIN% — название домена или компьютера, если он не в домене;
- проверка размера полученной от сервера следующей стадии и последующая работа с ней. В случае, если размер следующей стадии меньше 1048576 байт, происходит ее расшифровка однобайтовым XOR (ключ — первые два символа hex-строки файла khaki.hxn, представляющие собой один байт, например, «3b» -> 0x3b) и запуск следующей стадии (VBS-кода) в памяти текущего процесса. Если размер следующей стадии больше 1048576 байт, происходит запись следующей стадии в файл %APPDATA%\Microsoft\Windows\khaki.xml:(khakiinginit.vbs|khakiinit.vbs) и ее запуск из указанного файла;
- проверка наличия ненулевого файла %APPDATA%\Microsoft\Windows\khaki.xml:(khakiing.tmp|khaki.tmp). Если данный файл существует, происходит чтение его содержимого и отправка POST-запросом прочитанных данных по ссылке hxxps://avito-service[.]net/service/37.html/bersim, используя User-Agent: «Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) %USERDOMAIN% Chrome/116.0.0.0 Safari/537.36 Edg/116.0.0.0»;
- открытие файлов %APPDATA%\Microsoft\Windows\khaki.xml:khakiinit.vbs и %APPDATA%\Microsoft\Windows\khaki.xml:(khakiing.tmp|khaki.tmp) в режиме записи для очищения содержимого файлов;
- использование временных задержек при выполнении VBS-кода: 118150 мсек (~118 сек), 52905 мсек (~53 сек), 2183361 мсек + <случайное целое число> (от ~36 мин).
Проверка закрепления в системе и сетевое взаимодействие с сервером осуществляются в бесконечном цикле. Также стоит отметить, что из-за использования в VBS-коде конструкции «On Error Resume Next«, осуществляющей возобновление выполнения кода при возникновении ошибки, после проверки наличия ненулевого файла всегда будет выполняться код, отвечающий за открытие файла khaki.xml:khakiing.tmp (khaki.xml:khaki.tmp), чтение его содержимого, отправку POST-запросом содержимого на сервер, открытие указанного .tmp файла в режиме записи (создание пустого файла).
khaki.xml:khakiinit.vbs
Данный VBS-скрипт отвечает за очистку содержимого VBS-скриптов khaki.xml:khakiing.vbs и khaki.xml:khakiinit.vbs, а также очистку содержимого всех файлов из каталога «%USERPROFILE%\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.Word». Очистка содержимого осуществляется путем открытия файлов в режиме записи.
Другие обнаруженные вредоносные документы
С помощью нашего инструмента — графа исследования сетевой инфраструктуры — были выявлены другие вредоносные документы, связанные с доменом network-list[.]com.
Учитывая успешный опыт блокировки атак группы Cloud Atlas, остается только добавить, что система для проактивного поиска и защиты от сложных и неизвестных киберугроз F.A.С.С.T. Managed XDR обеспечивает защиту от широкого спектра киберрисков, среди которых программы-шифровальщики, банковские трояны, шпионы, бэкдоры, вредоносные скрипты и скрытые каналы передачи данных, как внутри, так и за пределами защищенного периметра.
Попробуйте Managed XDR от F.A.C.C.T.
Выявление и устранение киберугроз с применением исключительных возможностей оперативного и управляемого реагирования
Хеш-суммы файлов
Вредоносные документы (OLE-файлы)
- —
- MD5: 7bdb049cb0cc3623e4fa1d8e2574f1ce
- SHA-1: 7329424eba132feebba57e239000331e886b1656
- SHA-256: e3d2e6f8740bc5a510239af41e77a3e07eaf09f1aa5cda78558035399db3f971
- —
- MD5: b1995d8a9df9bd8ce23d38b0ab454580
- SHA-1: 7c8479a818ea21fc228334dfdd55044866a95026
- SHA-256: 8eb6b3ab2d18d01a46cae3cee0987fe8ecdedce2cb80666057a4880c9f37c529
- —
- MD5: f611cb1a320a9d3b5df4b70b37b0fd73
- SHA-1: d59f3f2b5132ff23e3fa6d88f1b97b299af38507
- SHA-256: 6e4349775f77b21b627d39a125cd60ad9f3df46d2b4f2a7a71df0d459cb7c9ae
- —
- MD5: 0957edfec31dd2dd05d484eed90593c7
- SHA-1: a03a699031e956b4fde1ced6309b67853a54602a
- SHA-256: cfc3178b710038666a4a4c5676b5c6befea085ad0243663791ae95f65e1468de
- —
- MD5: 965d5dc42ee1efdcbc52d061624526c7
- SHA-1: a176a164e728c929f70ab2ffa44213625ae17172
- SHA-256: ea91967c2a52b1c09395613f972a319332b678493f4e2ece0e0009e1efd36bec
- —
- MD5: b3de2f04ceb97f8e9164399649433e1e
- SHA-1: 3375772e3bc60614e3e398fd019c8931d2ad83c9
- SHA-256: b6f14556490908a462f8fb61a46b1b140f40723b5725c93fe4ff87a62f036e80
- —
- MD5: 2e950fe4bd76088f89433a6f2146cb67
- SHA-1: 07735f3da5f5847e9df43034459e3ead4c1f3f35
- SHA-256: baccfa04bf7cf862c05bc7180532cf609df43a091febd3d85524d6689df6e405
- —
- MD5: efd493e8ebcd66f9404338532519eb90
- SHA-1: 877f95ee15adb5540d0b50509a14d1cdf89fe3e1
- SHA-256: 1e931660cce69add24e405c9fbdd3072190c9f716c1675334f00d0bdbf84bf46
- —
- MD5: cd8141f094cfb0dae11747ee9dc74a2f
- SHA-1: 85a24692089d1a8dc6354a88b6f1e08567db6b0d
- SHA-256: a8ec7b38eaa239c90e647a47368159fb2a6a94c0e56df5a4d8f33e5b469e7942
- № 27807 от 20.11.2023.doc
- MD5: 9c5a6ede9b0ca906cbc121cc5496b714
- SHA-1: 3b2109317985de28d16aef6306ba5a788eb121bf
- SHA-256: b9056344e65655080905c4ddb38cfb8a09675fedc4c5244a969918af5b9b39cf
- ПОРЯДОК по вопросам воинского учета и оповещения (повестках).doc
- MD5: 0a850c27c8ce24c0a6fa5bcf7504dc30
- SHA-1: 44a21627eed099a55e5592509e6e3333c5d3d339
- SHA-256: 1ce69ec5b15ba2d0d7ed01cd9ae0facecf2b8fbbd32ea3b1f256310c129f5c74
Вредоносные шаблоны (RTF-файлы)
- php-pvrg.html_outblunder
- MD5: 27d49df3e0122152dc9a3f752a099f39
- SHA-1: 6efed9d4e8ae02808bed488566f90a4ecc361546
- SHA-256: bc684928f7fd575182af5f797308e9f2286e7bd8d010f6e04913a2600495bbb7
- rpgg.html_protophloem
- MD5: ddbc081392ffa41bcb3e7a007edf727b
- SHA-1: 151e9e6defac4a67be8916a1e119917b69e053ac
- SHA-256: 47c530de3ad2c98b0dfb0c72a4697240e7a218701c2cce12ae217faf58c32335
HTA-файл
- a63[1].hta
- MD5: b0de9d6133d73c32b243cf716a7c614c
- SHA-1: 53cea3a93a481a710e821d9c3e087fc18fb989f9
- SHA-256: c7100994bced2a532f3fc350c5db7401775be9658127233c7665e6864c6de2f7
Полные пути к файлам
%APPDATA%\Microsoft\Windows\khaki.xml
%USERPROFILE%\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content[.]IE5\[A-Z0-9]{8}\<название файла>[1].hta (пример: %USERPROFILE%\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5\GNN05AYE\a63[1].hta)
Процессы
- wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khaki.vbs»
- wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khakiing.vbs»
- wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khakiinit.vbs»
- wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khakiinginit.vbs»
Реестр
[HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] tzautoupdate = «wscript /B «%APPDATA%\Microsoft\Windows\khaki.xml:khaki.vbs»
Сетевые
Ссылки (URL)
- hxxps://network-list[.]com/?wkbi.html_handfeed
- hxxps://network-list[.]com/?wp-content_plugins/photo-gallery/css/bwg-fonts/fonts.css?ver=0.0.1time=1673472550/ballock
- hxxps://network-list[.]com/?php-tag_zabbix/lowlanders
- hxxps://network-list[.]com/?products_list108.htmlheader-bottom/nemoricole
- hxxps://network-list[.]com/?php-wp-content/plugins/contact-form-7/includes/css/styles.css/undesirous
- hxxps://network-list[.]com/?area_gifu_?iref=pc_gnavi/semisovereignty
- hxxps://network-list[.]com/?qgcl.html_anapeiratic
- hxxps://network-list[.]com/?php-business-and-economy/hematomancy
- hxxps://network-list[.]com/?wp-includes_wlwmanifest.xml/datemark
- hxxps://network-list[.]com/?rpgg.html_protophloem
hxxps://network-list[.]com/?php-pvrg.html_outblunder - hxxps://network-list[.]com/protophloem/p21
- hxxps://network-list[.]com/outblunder/a63
- hxxps://avito-service[.]net/service/37.html/bersim
Домены
- avito-service[.]net
- network-list[.]com
IP-адреса
95.217.82[.]125
MITRE ATT&CK®
Тактика | Техника | Процедура |
Reconnaissance (TA0043) | Gather Victim Identity Information: Email Addresses (T1589.002) | Cloud Atlas собирала адреса электронной почты, которые впоследствии использовались в кампаниях по целевому фишингу. |
Resource Development (TA0042) | Acquire Infrastructure: Domains (T1583.001) | Cloud Atlas зарегистрировала различные домены для размещения вредоносных нагрузок и командных центров (C2). |
Establish Accounts: Email Accounts (T1585.002) | Cloud Atlas создала электронные почтовые аккаунты для проведения фишинговых атак. | |
Develop Capabilities: Exploits (T1587.004) | Cloud Atlas использовала уязвимость CVE-2017-11882 в Microsoft Office. | |
Develop Capabilities: Malware (T1587.001) | Cloud Atlas разработала собственное вредоносное программное обеспечение для использования в своих операциях. | |
Stage Capabilities: Upload Malware (T1608.001) | Cloud Atlas зарегистрировала домены для размещения вредоносных нагрузок. | |
Initial Access (TA0001) | Phishing: Spearphishing Attachment (T1566.001) | Cloud Atlas отправляла фишинговые письма с вредоносными документами Microsoft Office вложенными в них. |
Execution (TA0002) | Inter-Process Communication: Component Object Model (T1559.001) | Cloud Atlas использовала компоненты COM в VBS-скриптах. |
Exploitation for Client Execution (T1203) | Cloud Atlas использовала уязвимость CVE-2017-11882 в Microsoft Office для запуска шелл-кода, загружающего вредоносный HTA-файл. | |
User Execution: Malicious File (T1204.002) | Cloud Atlas рассылала письма с вредоносными OLE-файлами с расширением .doc. | |
Command and Scripting Interpreter: Visual Basic (T1059.005) | Cloud Atlas применяла VBS-скрипты для загрузки и запуска своих вредоносных компонентов. | |
Windows Management Instrumentation (T1047) | Cloud Atlas использовала WMI в VBS-скриптах. | |
Persistence (TA0003) | Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder (T1547.001) | Cloud Atlas использовала ключ реестра [HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] для закрепления в системе. |
Privilege Escalation (TA0004) | ||
Defense Evasion (TA0005) | Obfuscated Files or Information (T1027) | Cloud Atlas обфусцировала код HTA-файла и VBS-скриптов, шифровала шелл-код и полезную нагрузку с помощью XOR. |
Deobfuscate/Decode Files or Information (T1140) | Cloud Atlas использовала XOR для расшифровки шелл-кода и полезной нагрузки. | |
Indicator Removal: File Deletion (T1070.004) | Cloud Atlas осуществляла очистку содержимого файлов путем их открытия в режиме записи без добавления в них какой-либо информации. | |
Hide Artifacts: NTFS File Attributes (T1564.004) | Cloud Atlas использовала альтернативные потоки данных NTFS, чтобы скрыть свои вредоносные компоненты (VBS-скрипты). | |
Template Injection (T1221) | Cloud Atlas использовала документы-приманки для загрузки вредоносных удаленных шаблонов через HTTPS. | |
System Binary Proxy Execution: Mshta (T1218.005) | Cloud Atlas использовала вредоносный HTA-файл для создания и запуска вредоносных VBS-скриптов. | |
Discovery (TA0007) | System Information Discovery (T1082) | Cloud Atlas получала название домена или хоста жертвы, если он не в домене, и отправляла его на сервер в строке User-Agent. |
Command and Control (TA0011) | Application Layer Protocol: Web Protocols (T1071.001) | Cloud Atlas использовала HTTPS для взаимодействия с серверами. |
Ingress Tool Transfer (T1105) | Cloud Atlas загружала свои вредоносные компоненты. |