Бэкдор замаскировали под обычный HTTPS — выглядит как YouTube, работает как слив данных

Бэкдор замаскировали под обычный HTTPS — выглядит как YouTube, работает как слив данных

Отчёт Cisco Talos о новом бэкдоре под названием Dohdoor.

image

С конца 2025 года Cisco Talos отслеживает кампанию против организаций из образования и здравоохранения в США. Исследователи связывают активность с актором UAT-10027 и описывают новый бэкдор Dohdoor. Отличительная черта – управление через DoH DNS. Запросы DNS уходят не в обычный DNS-трафик, а внутри HTTPS по 443 порту, поэтому со стороны сеть видит привычные шифрованные соединения. Дополнительную маскировку даёт то, что часть обмена проходит через инфраструктуру Cloudflare.

Talos предполагает, что первое проникновение чаще всего начинается с фишинга и приёмов социальной инженерии. Дальше на заражённой машине запускается PowerShell-скрипт, который вызывает curl.exe с закодированным URL и скачивает с удалённого промежуточного сервера пакетный файл Windows с расширением .bat или .cmd. Закодированная ссылка усложняет быстрый разбор журналов и мешает простым фильтрам, которые ловят подозрительные адреса по строкам.

Пакетный файл готовит рабочую папку и запускает вредоносную DLL через подмену библиотек. Скрипт создаёт скрытый каталог в C:\ProgramData или C:\Users\Public, затем скачивает с C2 DLL по пути вида /111111?sub=d и сохраняет её под именем, похожим на системный файл, например propsys.dll или batmeter.dll. Следом в тот же каталог копируются легитимные исполняемые файлы Windows, Talos упоминает Fondue.exe, mblctr.exe и ScreenClippingHost.exe. Эти программы запускаются из рабочей папки с параметром, который указывает на C2-ресурс /111111?sub=s. При запуске легитимный файл подхватывает подложенную DLL через приём DLL sideloading и передаёт управление Dohdoor.

После запуска Dohdoor пакетный файл старается убрать явные следы. Скрипт удаляет историю команд окна Выполнить, очищая ключ реестра RunMRU, затем очищает буфер обмена и удаляет собственный файл. После такой уборки у расследования остаётся меньше очевидных артефактов на диске и в истории действий пользователя.

Talos описывает Dohdoor как 64-битную DLL, собранную 25 ноября 2025 года. Внутри обнаружен отладочный путь C:\Users\diablo\Desktop\SimpleDll\TlsClient.hpp. Модуль не полагается на статические импорты и подбирает адреса функций Windows динамически по хешам, из-за чего таблица импорта выглядит нетипично пустой. Далее Dohdoor разбирает параметры командной строки, извлекает HTTPS-адрес C2 и путь к ресурсу, который задаёт, какую полезную нагрузку нужно скачать.

Домен для управления Dohdoor разрешает через DoH на стороне Cloudflare. Вместо обычного DNS-запроса вредонос формирует HTTP GET к DNS-сервису Cloudflare по 443 порту и запрашивает A и AAAA записи, то есть адреса для IPv4 и IPv6. В заголовках Talos видела User-Agent: insomnia/11.3.0 и Accept: applications/dns-json. Ответ приходит в JSON, а Dohdoor извлекает IP-адрес без полноценного JSON-парсера, простым поиском по строкам: сначала ищется блок Answer, затем поле data. Такой способ помогает обходить средства, которые контролируют именно DNS-трафик, а HTTPS трафик видят как обычное шифрованное соединение.

Получив IP-адрес, Dohdoor устанавливает HTTPS-соединение к управлению, скрытому за пограничной сетью Cloudflare. Снаружи трафик выглядит как обычный HTTPS к доверенным глобальным адресам. В запросах встречаются User-Agent вида curl/7.88 или curl/7.83.1 и обращение к ресурсу наподобие /X111111?sub=s. Клиент умеет работать и с Content-Length, и с chunked encoding, поэтому сервер может менять способ отдачи данных, не ломая обмен.

Для доменов используются имена, которые должны выглядеть привычно для автоматических фильтров и пользователя. Talos приводит примеры субдоменов MswInSofTUpDloAd и DEEPinSPeCTioNsyStEM, похожих на обновления Windows или на телеметрию защитных устройств. Дополнительно встречается нестандартный регистр и необычные зоны верхнего уровня, среди примеров – .OnLiNe, .DeSigN и .SoFTWARe. Такая запись сбивает простые правила сопоставления строк и позволяет менять домены, не теряя общий шаблон.

Следующая стадия приходит в зашифрованном виде. Dohdoor расшифровывает данные собственной схемой XOR-SUB с позиционно-зависимым преобразованием и 32-байтным ключом. Talos отмечает соотношение 4:1: шифртекст примерно в четыре раза больше расшифрованного буфера. Основная часть расшифровки идёт блоками по 16 байт с ускорением SIMD-инструкциями. Для оставшихся байтов применяется формула decrypted[i] = encrypted[i*4] - i - 0x26, то есть берётся каждый четвёртый байт, затем вычитается индекс позиции и константа 0x26.

После расшифровки запускается следующая стадия через process hollowing. Dohdoor создаёт легитимный процесс в приостановленном состоянии, подменяет содержимое памяти расшифрованным кодом и затем продолжает выполнение процесса. Talos перечисляет жёстко заданные пути к целевым файлам: C:\Windows\System32\OpenWith.exe, C:\Windows\System32\wksprt.exe, C:\Program Files\Windows Photo Viewer\ImagingDevices.exe, C:\Program Files\Windows Mail\wab.exe. Такой запуск помогает спрятать работу вредоносного кода под именем штатного процесса.

Для обхода EDR Dohdoor использует unhooking системных вызовов в ntdll.dll. Talos объясняет это так: многие EDR ставят пользовательские хуки в ntdll, патчат начало функций и перенаправляют выполнение в код мониторинга. Dohdoor ищет ntdll.dll по хешу 0x28cc и NtProtectVirtualMemory по хешу 0xbc46c894, считывает первые 32 байта через ReadProcessMemory и сравнивает с ожидаемым шаблоном заглушки системного вызова 4C 8B D1 B8 FF 00 00 00, соответствующим mov r10, rcx; mov eax, 0FFh. Если совпадение найдено, записывается патч B8 BB 00 00 00 C3, то есть mov eax, 0BBh; ret. Итогом становится короткая заглушка, которая обходит пользовательские перехваты.

Talos не нашла полезную нагрузку, которую Dohdoor скачивал и внедрял, но по инфраструктуре появились косвенные признаки. В данных из открытых источников по одному из C2-хостов указаны JA3S-хеш 466556e923186364e82cbdb4cad8df2c и серийный номер TLS-сертификата 7FF31977972C224A76155D13B6D685E3. Talos отмечает сходство этих признаков с профилем Cobalt Strike и допускает, что следующей стадией мог быть Cobalt Strike Beacon для закрепления в сети и дальнейших действий.

В вопросе атрибуции Talos подчёркивает низкую уверенность. Возможную связь UAT-10027 с Lazarus исследователи строят на пересечениях по TTP и сходстве с инструментом Lazarloader. В список совпадений попали схема XOR-SUB с позиционно-зависимой расшифровкой и константой 0x26, приёмы unhooking ntdll для обхода EDR, использование DoH через Cloudflare, а также сочетание DLL sideloading и process hollowing. При этом профиль целей отличается от типичных историй про Lazarus, который чаще связывают с криптовалютой и оборонными организациями. Talos напоминает, что северокорейские акторы уже атаковали и медицинские организации, и образовательный сектор, поэтому выбор целей не выглядит невозможным.