![](https://habrastorage.org/getpro/habr/upload_files/535/b9d/936/535b9d9367bc22ba6bdb36f7df0166fa.jpg)
Если помните, недавно мы рассказывали о том, как специалисты нашего экспертного центра безопасности (PT Expert Security Center, PT ESC) обнаружили новую, ранее неизвестную APT-группировку, получившую название ChamelGang (ее профайл смотрите здесь). Это произошло, когда нашу команду по реагированию на инциденты ИБ пригласили расследовать множественные срабатывания антивирусных средств защиты с вердиктом Cobalt Strike Beacon в российской топливно-энергетической компании.
Уже после расследования первого инцидента, в рамках мониторинга угроз информационной безопасности (threat intelligence) и анализа только что выявленной группировки, специалисты PT ESC обнаружили еще одну ее успешную атаку, идентифицировали и оповестили новую жертву — предприятие авиапрома России — и помогли оперативно устранить угрозу. Как и в первом случае, преступники были нацелены на похищение информации, однако быстрое обнаружение APT-группы и противодействие ей позволили предотвратить кражу. Сегодня мы поделимся главными моментами этого расследования.
Полный отчет с техническими подробностями обоих инцидентов читайте по ссылке.
Новая атака — новый способ проникновения во внутреннюю сеть жертвы
Исследуя активность ChamelGang, 16 августа 2021 года мы обнаружили свежие следы компрометации серверов в российской авиационно-промышленной компании, которая тоже стала жертвой этой группировки. Злоумышленники изменили исходный вектор атаки: для проникновения в инфраструктуру они воспользовались цепочкой связанных уязвимостей в Microsoft Exchange (CVE-2021-34473, CVE-2021-34523, CVE-2021-31207), получившей название ProxyShell. Напомним, что в первом кейсе группа ChamelGang использовала атаку типа trusted relationship: чтобы проникнуть в локальную сеть топливно-энергетической компании, преступники скомпрометировали дочернюю организацию, используя уязвимую версию веб-приложения на платформе JBoss Application Server. Подробнее об этой атаке мы рассказывали в одной из наших прошлых статей.
Что интересно, впервые об уязвимостях ProxyShell стало известно из доклада, представленного на конференции Black Hat 5 августа 2021 года. Кстати, на следующий день исследователь опубликовал подробную статью. После этого цепочку ProxyShell стали активно эксплуатировать различные APT-группы, а с 13 августа на GitHub начали появляться первые POC-скрипты. Давайте пошагово разберем, как действовали атакующие:
· CVE-2021-34473 — обход ACL. Уязвимость позволяет указать адрес почтового ящика через строку запроса в обработчике EwsAutodiscoverProxyRequestHandler. Это дает возможность получить доступ к произвольному URL с правами NT AUTHORITY\SYSTEM.
![](https://habrastorage.org/getpro/habr/upload_files/630/dd0/e00/630dd0e009de0abe1c1afbb3a4d3500e.jpg)
· CVE-2021-34523 — понижение привилегий. Для пользователя NT AUTHORITY\SYSTEM не существует почтового ящика, поэтому злоумышленники на этом этапе получают валидный доменный SID локального администратора. В дальнейшем SID используется для параметра X-Rps-CAT.
![](https://habrastorage.org/getpro/habr/upload_files/488/d63/4bd/488d634bd0f165d05dc18f0f719f422a.jpg)
· Затем атакующие создают письмо в черновике через веб-службу Exchange (EWS). В POST-запросе передается элемент SOAP с черновым письмом.
![](https://habrastorage.org/getpro/habr/upload_files/ee0/7f2/abb/ee07f2abb66936b12ee60d306e1e2a5b.jpg)
![Черновики с полезной нагрузкой в почтовом ящике Черновики с полезной нагрузкой в почтовом ящике](https://habrastorage.org/getpro/habr/upload_files/343/36d/77c/34336d77c7270e2b440a7bf07819fde1.jpg)
· CVE-2021-31207 — возможность записи в файл с последующим удаленным выполнением кода. Атакующие используют командлеты PowerShell: New-ManagementRoleAssignment, чтобы получить роль импорта и экспорта почтовых ящиков, и New-MailboxExportRequest — для экспорта почтового ящика в папку веб-сервера.
![](https://habrastorage.org/getpro/habr/upload_files/fe7/d40/c91/fe7d40c911cd3c403a32068f101ee966.jpg)
· Далее в файловую систему выгружается почтовый PST-файл с сигнатурой (magic) !BDN (0x21, 0x42, 0x44, 0x4E) и расширением ASPX.
![](https://habrastorage.org/getpro/habr/upload_files/1bc/2bd/410/1bc2bd410555768e92b08ff2f2c9a7df.jpg)
· В содержимом конечного файла после наложения перестановочной кодировки NDB_CRYPT_PERMUTE можно заметить однострочный веб-шелл.
![](https://habrastorage.org/getpro/habr/upload_files/692/25b/a2c/69225ba2cb7b34ad13a1fae722ac4b88.jpg)
· Затем отправляют GET-запрос на веб-шелл.
![](https://habrastorage.org/getpro/habr/upload_files/7b1/d7d/070/7b1d7d070d2691da701280d05696d277.jpg)
После того, как группа ChamelGang успешно установила веб-шелл, она начала проводить разведку на скомпрометированном узле.
Рекомендация: обнаружить попытки эксплуатации цепочки ProxyShell в журналах IIS-сервера помогут YARA-сигнатуры. Они общедоступны. Много полезной информации об этих уязвимостях есть в этом материале. Берите на заметку!
Встречайте новую версию бэкдора DoorMe
Бэкдор DoorMe наряду с ProxyT и BeaconLoader в арсенале группировки ChamelGang — это экземпляры нового, не встречавшегося ранее вредоносного ПО. По нашим данным, до этого ни одна APT-группа не применяла их в атаках. С результатами анализа образца DoorMe — самого интересного из вредоносов собственной разработки группы — мы уже знакомили вас в нашем прошлом посте. Расследуя инцидент в авиапромышленной компании, мы обнаружили расширенную версию этого бэкдора. Изменилась обфускация, появились новые команды, но название класса, содержащего переопределенные методы, которые реализуют набор функций бэкдора, осталось таким же — DoorMe.
![Использование класса DoorMe Использование класса DoorMe](https://habrastorage.org/getpro/habr/upload_files/1bb/8d6/1bd/1bb8d61bd9f2162804c47f6c4266cfff.jpg)
В этот раз группа ChamelGang, чтобы усложнить анализ, решила применить обфускацию control flow с использованием диспатчера.
![Обфускация control flow Обфускация control flow](https://habrastorage.org/getpro/habr/upload_files/a5e/d36/4cd/a5ed364cd03ea52d7866bd9ee975f849.jpg)
Часть чувствительных строк этого бэкдора теперь лежат в открытом виде. Другие же были подвержены следующей схеме обфускации:
![](https://habrastorage.org/getpro/habr/upload_files/9e8/310/9ef/9e83109ef472cb4485a3ca0c2022c9b7.jpg)
![Обфускация строк Обфускация строк](https://habrastorage.org/getpro/habr/upload_files/9b2/195/020/9b219502018d204162e972ee5066e6de.jpg)
Если внимательно посмотреть на значения x[i] и y[i], то можно заметить, что они — инверсия друг друга. Таким образом, итоговую формулу для каждого байта можно упростить:
![](https://habrastorage.org/getpro/habr/upload_files/1f0/a4a/0d5/1f0a4a0d502db31d5a43722aa8cf2ff0.jpg)
Примечательно, что эта формула сводится к двум XOR, а с учетом того, что в коде видно использование одинаковых пар x и z, можно сказать, что генератор этих строк работает еще проще, чем мог бы. В отличие от IDA Pro, Ghidra упрощает эти уравнения, хотя и не справляется со всеми:
![Обфускация строк в декомпиляторе Ghidra Обфускация строк в декомпиляторе Ghidra](https://habrastorage.org/getpro/habr/upload_files/191/60d/013/19160d0134be2ee9baca61c8b659076f.jpg)
Кроме того, APT-группа использует технику, которая «ломает» IDA Pro: она неправильно дробит функцию, из-за чего некоторые ноды графа исчезают из декомпилятора. Впрочем, с этой проблемой легко справляется скрипт IDAPython — его можно посмотреть здесь.
Количество команд, которое поддерживает DoorMe v2, увеличилось с шести до одиннадцати, что дает злоумышленникам еще больше возможностей в захваченных системах. Теперь бэкдор умеет:
возвращать текущую рабочую папку приложения (двумя способами);
получать информацию о содержимом в выбранной папке и передавать тип файла, его размер, название и дату последнего изменения;
получать список процессов в виде таблицы PID PPID Arch Name User;
завершать и удалять процессы.
В нашем полном отчете представлено подробное описание вредоносного ПО, обнаруженного экспертами Positive Technologies в ходе двух расследований, — как новых экземпляров, о которых мы упоминали ранее, так и уже известных зловредов (FRP, Cobalt Strike Beacon и Tiny SHell).
Раскручиваем цепочку атаки дальше
Продолжаем идти по цифровым следам и расследовать дальнейшее перемещение группировки ChamelGang по сети авиапромышленной компании. Итак, что же мы увидели? Атакующие контролировали зараженные узлы с помощью веб-шеллов ASPX:
После закрепления на зараженных узлах они установили на два почтовых сервера (Microsoft Exchange Server) модифицированный бэкдор DoorMe, о котором мы рассказывали выше. Особый интерес представляют выбранные преступной группой имена вредоносных библиотек — modrpflt.dll и protsdown.dll — и имена модулей IIS-сервера: modrpflt, protsdown. Это попытки замаскировать файлы под легитимные библиотеки. Для сокрытия вредоносных файлов злоумышленники также изменяли временные метки (Timestomp) и присваивали им значения легитимных файлов.
![Конфигурационный файл applicationhost.config Конфигурационный файл applicationhost.config](https://habrastorage.org/getpro/habr/upload_files/6c6/eba/72b/6c6eba72b218730302c4d8f07b9be00a.jpg)
![Timestomp вредоносной библиотеки Timestomp вредоносной библиотеки](https://habrastorage.org/getpro/habr/upload_files/71b/924/33b/71b92433b1d52ace571d6bd7375c6fdc.jpg)
Мы предполагаем, что группировка ChamelGang модифицировала бэкдор DoorMe после того, как его образец был загружен на VirusTotal. В результате новой обфускации большинство антивирусных решений перестало детектировать это вредоносное ПО. Так и случилось в момент атаки: бэкдор не был определен средствами защиты компании-жертвы.
![Детекты антивирусных движков для старого файла Детекты антивирусных движков для старого файла](https://habrastorage.org/getpro/habr/upload_files/60c/a39/752/60ca3975211ff512ffd09e92a3917ecc.jpg)
![Детекты антивирусных движков для нового файла Детекты антивирусных движков для нового файла](https://habrastorage.org/getpro/habr/upload_files/f43/3db/ca3/f433dbca3ee51974a59f9d0d9379cb7e.jpg)
Ниже показан пример выполнения команды через бэкдор DoorMe в журналах IIS:
![](https://habrastorage.org/getpro/habr/upload_files/f61/0e6/27d/f610e627dbebe5683f382e284dffc0b8.jpg)
Для продвижения внутри сети и заражения пользовательских узлов злоумышленники воспользовались BeaconLoader (конфигурация описана в полном отчете). Для его запуска хакерская группа использовала технику запуска через службу MSDTC.
Как долго злоумышленники находились в инфраструктуре и какой ущерб нанесли
Специалисты нашего PT Expert Security Center вовремя сообщили атакованной компании о заражении — спустя четыре дня после того, как был скомпрометирован сервер. Как и в предыдущем случае, группировка ChamelGang была нацелена на кражу данных, однако оперативное обнаружение APT-группы и противодействие ей (вместе с сотрудниками авиапромышленного предприятия) позволило нам остановить атаку и предотвратить хищение данных. В общей сложности злоумышленники находились в инфраструктуре компании всего восемь дней и значимого ущерба нанести не успели.
Расследование инцидента мы провели в кратчайшие сроки: с момента оповещения до завершения работ по реагированию и исследованию прошло две недели. К этому времени мы уже изучили тактики и техники ChamelGang и смогли быстро обнаружить действия атакующих в сети новой жертвы. Мы полагаем, что злоумышленники не ожидали, что их бэкдоры обнаружат так скоро, поэтому не успели развить атаку дальше.
Как противостоять атакам на новую уязвимость в Microsoft Exchange
Как уже отмечалось в статье, в настоящее время множество злоумышленников активно используют недавно выявленную уязвимость ProxyShell в Microsoft Exchange для установки различных бэкдоров. Рост числа случаев ее эксплуатации подтверждается недавним исследованием компании FireEye.
Для защиты от подобных атак эксперты Positive Technologies рекомендуют:
регулярно устанавливать обновления безопасности, в том числе для таких уязвимостей, как ProxyLogon и ProxyShell;
проверять конфигурационный файл %windir%\system32\inetsrv\config\ApplicationHost.config на наличие вредоносных (или подозрительных) модулей;
отслеживать запуск консольной утилиты AppCmd.exe и выполнение команд в системе от родительского процесса w3wp.exe (сервис OWA);
добавить индикаторы компрометации в свои средства защиты для поиска зараженных серверов.
Обнаружить кибератаки и противодействовать им компаниям помогут системы выявления инцидентов ИБ (SIEM), системы глубокого анализа трафика (NTA) и решения класса «песочница» (sandbox).
Ознакомиться со всеми деталями расследования, подробным анализом вредоносного ПО из набора хакерской группировки ChamelGang, в том числе ранее не описанными бэкдорами, и получить индикаторы компрометации для выявления следов атаки можно по ссылке. Больше отчетов PT ESC об актуальных киберугрозах, новых образцах ВПО, активности APT-группировок, техниках и инструментах хакеров читайте в нашем блоге.
![](https://habrastorage.org/getpro/habr/upload_files/d98/a3d/51c/d98a3d51ceaf5442ec4231e97fc48942.png)
Александр Григорян, Денис Кувшинов, Даниил Колосков и Станислав Раковский при участии команд incident response и threat intelligence PT Expert Security Center
Читайте также в нашем хаброблоге: Новый дроппер группы APT31: исследуем зловреды, которые мы обнаружили в атаках на Монголию, Россию и США