Группировка DragonForce наладила канал управления заражёнными компьютерами через легитимные серверы Microsoft Teams. Речь идёт о двух вредоносных программах, которые применяют в атаках на организации. Первая работает только в оперативной памяти и исчезает после перезагрузки. Вторая закрепляется на диске, запускается при входе в систему и остаётся там надолго. Обе рассчитаны на незаметную работу и устойчивую связь с инфраструктурой атакующих.
Описание
DragonForce появилась в 2023 году как программа-вымогатель, работающая по модели аренды. Разработчики дают сообщникам готовые инструменты и инфраструктуру, а те проводят атаки и делят с ними доход. Со временем группировка вышла за эти рамки. Теперь она поставляет доступ в чужие сети, собственные утилиты и услуги сопровождения атак. Часть операций вообще не связана с шифрованием данных. Цель таких кампаний - закрепиться в инфраструктуре и ждать удобного момента.
Первая вредоносная программа попадает в систему без файла на диске. Её код исполняется прямо в памяти, поэтому привычная проверка файлов ничего не находит. Для связи с управляющим сервером злоумышленники задействуют серверы-посредники TURN (служба, пересылающая трафик между узлами в обход сетевых ограничений). В роли таких посредников выступают легитимные серверы Microsoft Teams. Один из этих инструментов уже фигурировал в отчёте Symantec. Для внешнего наблюдателя такой обмен почти не отличается от обычного трафика сервиса видеосвязи.
Схема с чужими серверами-посредниками встречается всё чаще. Крупные платформы связи держат собственную инфраструктуру для обхода сетевых ограничений, и закрывать её целиком никто не станет. Злоумышленники этим пользуются: данные уходят на известный и доверенный адрес. Отличить вредоносный сеанс от обычного звонка сотрудника по внешним признакам трудно. Поэтому защита всё чаще опирается не на блокировку сервисов, а на анализ поведения программ на самих устройствах. Закрывать мессенджеры и платформы видеосвязи целиком невыгодно, так что такие каналы остаются рабочими для атакующих долгое время.
Вторая программа решает задачу длительного присутствия. Её запускает задание в планировщике, которое оставил предыдущий этап заражения. Файл хранится в зашифрованном виде и привязан к конкретной машине: на другом компьютере он не откроется. Закрепление идёт через легитимную программу платформы Java, у которой подменили один из модулей. Антивирус видит знакомый процесс, а внутри работает чужой код. Каждая копия модуля получает уникальный набор байтов, поэтому поиск по образцу не даёт результата.
Главная особенность второй программы - резервный канал связи. Если обмен через TURN срывается, она переключается на MQTT (облегчённый протокол обмена сообщениями, который используют устройства интернета вещей). Команды приходят компактными посылками, разбитыми на блоки. Каждый блок получает номер, и программа сверяет его контрольную сумму. Потерянный фрагмент она запрашивает повторно, поэтому обрыв соединения не мешает доставить задание целиком. Затем программа расшифровывает содержимое простым побитовым преобразованием и запускает готовый код.
Набор задач у второй программы невелик, но покрывает основные нужды атакующих. Она умеет вставить в нагрузку ссылку для скачивания файла, запустить командную строку, подключиться к указанному узлу по сети или отработать готовый код без изменений. Параметры подставляются в заранее размеченные места, поэтому одна и та же основа годится для разных действий. Исходящие данные программа тоже дробит на небольшие блоки. Так надёжнее: потеря одного фрагмента не ломает передачу.
Если очередная попытка связи не удаётся, программа засыпает на пять минут. Перед этим она шифрует собственную область памяти, чтобы проверка не нашла в ней ничего подозрительного. Пауза снижает шанс попасть под проверку, которая запускается по расписанию или по подозрению. Такой перерыв не мешает заражению: программа остаётся в автозагрузке и вернётся к связи позже. Для защитных средств машина выглядит спокойной - подозрительных процессов нет, обращений к незнакомым адресам тоже.
Обнаружить такую активность помогает сопоставление событий из разных источников. Срабатывания защитных средств на конечных устройствах, журналы сетевого обмена, сведения о запуске процессов - по отдельности каждый сигнал выглядит безобидно. Вместе они показывают цельную ситуацию, которую служба безопасности может распознать. Здесь выручает охота на угрозы (проактивный поиск следов атак в инфраструктуре), а не только автоматические фильтры.
Ущерб от подобных схем редко наступает сразу. Злоумышленник получает стабильный канал управления и может вернуться в сеть в удобный момент, например чтобы развернуть программы-вымогатели или выкачать данные. Под угрозой компании любого размера, госструктуры и подрядчики, у которых есть доступ к чужим системам. Такие инструменты создают долгую угрозу, а не разовый инцидент, поэтому восстановить картину происходящего задним числом бывает сложно. Заражённый домашний компьютер сотрудника тоже открывает путь внутрь корпоративной сети.
Снизить риск помогают базовые меры. Обновляйте системы и стороннее ПО, проверяйте задания планировщика и автозагрузку, ограничивайте исходящие соединения сервисами, которые действительно нужны сотрудникам. Модуль рядом с известной программой, появившийся без обновления, - повод проверить целостность файлов. Разумно заранее определить допустимые внешние сервисы и вести их перечень. Двухфакторная аутентификация и разделение сети на сегменты уменьшают ущерб, если проникновение всё же состоялось. DragonForce идёт по пути, который становится обычным для крупных группировок: вместо разовой атаки - долгое присутствие, набор собственных инструментов и связь через чужие сервисы, которые закрывать целиком невыгодно.