Обнаружен троян с постквантовым шифрованием: DLL-библиотека под видом утилиты ASUS использует ML-KEM и ChaCha20-Poly1305

remote access Trojan

Девятого апреля 2026 года в 04:17 UTC на платформу VirusTotal поступил образец вредоносной DLL-библиотеки, написанной на языке Go и скомпилированной для 64-разрядной архитектуры Windows. Обнаружение на момент загрузки составляло 15 из 76 антивирусных движков, причём ESET идентифицировала троян как WinGo/Agent_AGen.ACA, а Microsoft - как Trojan:Win32/Wacatac.B!ml. Файл размером 3,57 мегабайта маскируется под служебную библиотеку ASUSTeK под названием GamingHostDetection.dll, содержит обфускацию при помощи инструмента Garble и снабжён поддельной цифровой подписью DigiCert, созданной якобы 7 апреля 2026 года. Это событие примечательно не столько самой маскировкой - подобные уловки давно стали рутиной, - сколько криптографическим стеком, который обнаружили аналитики, разобравшие образец в первые часы после публикации.

Описание

Внутри DLL найдено сразу несколько криптоалгоритмов: ChaCha20-Poly1305 в режиме AEAD с выводом ключей через HKDF, AES в режимах CBC и CTR для хранения конфигурации, а самое необычное - ML-KEM, стандартизированный Национальным институтом стандартов и технологий США (NIST) механизм инкапсуляции постквантовых ключей. ML-KEM (Module-Lattice Key Encapsulation Mechanism) был утверждён в августе 2024 года как FIPS 203 и предназначен для замены классического обмена ключами на эллиптических кривых и RSA, которые уязвимы перед будущими квантовыми компьютерами. Реализация функций Encapsulate и Decapsulate в Go-пакете, обёрнутом в обфусцированную DLL, - это первый задокументированный случай использования постквантовой криптографии в массовом вредоносном ПО. Исследователи обнаружили такую комбинацию при анализе SHA256-хэша 328e097831c74290f102dcf11c41bc4b7b82a37681d8df3690783ea8a9e3bebc.

Сочетание ML-KEM с ChaCha20-Poly1305 и HKDF указывает на гибридный классическо-постквантовый обмен ключами для защиты каналов управления (C2) от перехвата и расшифровки в будущем. Злоумышленник, по всей видимости, стремится обеспечить прямую секретность даже против гипотетического квантового противника, который может перехватывать трафик сегодня с намерением расшифровать его десятилетия спустя. Такая предусмотрительность совершенно нетипична для обычных киберпреступных группировок, которые обычно ограничиваются AES-256-CBC с жёстко заданным ключом.

Структурно DLL скомпилирована в среде Go версии 1.20 или новее (маркер pclntab 0xFFFFFFF1) и содержит 3 932 функции, из которых лишь 316 пользовательских, остальные - библиотечные. Все имена пакетов и функций заменены случайными строками при помощи Garble, а пути к файлам закодированы простым шифром Цезаря с переменным сдвигом. Расшифровка этих путей вскрыла несколько интересных деталей: например, проверка существования файла C:\Users\Public\triage_wallpaper.jpg - это тест на запуск в песочнице Any.Run или Hatching Triage. Также обнаружены ссылки на ntdll.dll (для прямых системных вызовов NTAPI), rundll32.exe (как прокси выполнения) и dllhost.exe (для замещения процессов). Сама DLL экспортирует две функции: CfgGetCacheW, стилизованную под легитимный API Windows, и случайную строку NTjmeGDYnYYcWrvZB, что облегчает боковую загрузку через rundll32.exe.

Подделан сертификат подписи: в поле Common Name указано xzRkBBlpsGnp.azurewebsites.net, а субъект содержит wildcard *.azurewebsites.net. При этом сертификат якобы выпущен DigiCert, но цепочка обрывается на самозаверенном корне, а расширенное использование ключей включает одновременно серверную аутентификацию, аутентификацию клиента и подпись кода - что никогда не встречается в настоящих сертификатах DigiCert. Время компиляции PE-файла проставлено 12 июля 2025 года, тогда как сертификат датирован 7 апреля 2026 года. Девятимесячный разрыв, вероятно, говорит о том, что бинарный шаблон переподписывается индивидуально для каждой жертвы.

Инфраструктура командных серверов также продумана: два облачных провайдера - Azure Web Apps (поддомен xzRkBBlpsGnp.azurewebsites.net) и Firebase Hosting (OAfNveOa.web.app). Оба ресурса были созданы за 48 часов до первой загрузки образца, имеют 90-дневные сертификаты и используют пиннинг сертификатов (DER-копии встроены в тело DLL), что делает перехват через подмену сертификата корпоративным прокси невозможным. Такая архитектура характерна для целевых атак и государственных групп, а не для массового вымогательства.

На текущий момент не удалось связать этот образец с какими-либо известными кампаниями через VT-сводки, ThreatFox или URLhaus. Отсутствие "сиблингов" по хэшам и именам сигнализирует о том, что вредонос создаётся под конкретную цель или для ограниченной группы заказчиков. Автор, судя по криптографической грамотности, вниманию к обратной разработке и способам обхода песочниц, принадлежит к числу опытных разработчиков, возможно, имеющих доступ к государственным ресурсам или коммерческим инструментам для пентестов. Использование ML-KEM - сильный сигнал того, что перед нами не обычный инфостилер, а инструмент для долгосрочного шпионажа с защитой от будущего анализа перехваченных данных. Специалистам по безопасности следует обратить внимание на загрузку DLL через rundll32.exe с подозрительными сертификатами и на HTTPS-соединения к случайным поддоменам azurewebsites.net из процессов, порождённых легитимными приложениями ASUS.

Индикаторы компрометации

IPv4

  • 199.36.158.100

Domains

  • OAfNveOa.web.app
  • xzRkBBlpsGnp.azurewebsites.net

MD5

85425de806a7373a22ce968eef1a561d

SHA1

  • 8930835f206921ae0db300f2ea7c69655e57523a

SHA256

  • 328e097831c74290f102dcf11c41bc4b7b82a37681d8df3690783ea8a9e3bebc

Комментарии: 0