Аналитики группы ThreatLabz компании Zscaler зафиксировали возвращение на сцену киберугроз трояна Zloader после почти двухлетнего перерыва. В сентябре 2023 года появились новые версии этого вредоносного ПО (2.11.6.0 и 2.13.7.0), демонстрирующие значительные улучшения в методах обфускации, анти-анализа и сетевой коммуникации. Zloader, также известный как Terdot, DELoader или Silent Night, изначально созданный в 2015 году на основе утекшего исходного кода трояна Zeus для кражи банковских данных, теперь перепрофилирован брокерами первоначального доступа для проникновения в корпоративные сети с последующим развертыванием программ-вымогателей (ransomware).
Описание
Особенностью новой кампании является ее целевой, а не массовый характер. Zloader распространяется ограниченно, что делает его образцы относительно редкими в дикой природе. Это указывает на тщательный отбор жертв, вероятно, с целью последующих высокодоходных атак, таких как программ-вымогателей.
Усовершенствованные методы уклонения от обнаружения
Одним из ключевых нововведений стала модификация проверки имени файла. Ранее Zloader требовал для запуска определенное жестко прописанное имя, что затрудняло его автоматический анализ в песочницах. Теперь злоумышленники получили больше гибкости: троян может быть запущен под двумя универсальными именами - Updater.exe или Updater.dll.
Значительно усилены техники обфускации кода. Для сокрытия логики используются многоуровневые функции декодирования целых чисел на основе операции XOR. Аналитикам ThreatLabz пришлось применять специальные скрипты для среды дизассемблирования IDA, чтобы очистить код от этих слоев.
Добавлена новая проверка уровня целостности процесса Windows. Zloader проверяет, с какими привилегиями он запущен, и завершает работу, если обнаруживает высокий уровень целостности (High integrity), характерный для административных учетных записей. Поскольку песочницы часто запускают образцы с повышенными привилегиями, это служит еще одним механизмом обнаружения анализа. Если троян выполняется со средним уровнем целостности (Medium integrity), стандартным для обычных пользователей, он устанавливается в каталог %APPDATA%. В случае системной целостности (System integrity) вредоносное ПО прописывается в %PROGRAMFILES%. Это необычное поведение, так как трояны обычно стремятся получить повышенные права, однако Zloader жертвует этим ради скрытности.
Эволюция конфигурации и функционала
Статическая конфигурация трояна также претерпела изменения. Поля TLS Server Name Indication (SNI) и DNS-сервера, используемого в качестве командного центра (C2) при туннелировании через DNS, были перемещены в конец раздела доменов C2. Сами DNS-серверы теперь представлены в миниатюрном формате JSON, который включает параметры "proto" (протокол: UDP/DNS, HTTPS/DoH, TLS/DoT), "ip" (IP-адрес резолвера), "port" (порт) и "qps" (максимальное количество запросов в секунду).
Важным обновлением стала интеграция новых функций для работы с протоколом LDAP в интерактивную оболочку трояна. Это расширяет возможности злоумышленников по разведке сети и горизонтальному перемещению в корпоративной среде. Добавлены команды, такие как "ldap_search_s" для синхронного поиска в LDAP, "ldap_bind_s" для аутентификации на сервере и другие, позволяющие извлекать информацию о пользователях, компьютерах и других объектах домена.
Модернизация сетевой коммуникации
В новых версиях Zloader отказался от алгоритма генерации доменных имен (DGA), который редко использовался ранее. Основные изменения затронули протокол DNS-туннелирования для общения с C2-сервером. Если раньше полезная нагрузка в DNS-запросах и ответах шифровалась с помощью TLS, то теперь используется кастомный алгоритм шифрования поверх кодирования Base32. Это позволяет лучше маскировать трафик под легитимный DNS, так как TLS-сообщения имеют хорошо опознаваемую структуру.
Формат DNS-сообщения был изменен. Добавлено поле сессионного ключа, содержащее случайное 32-битное число (DWORD). Ключ для расшифровки заголовка и полезной нагрузки генерируется с помощью операции XOR между этим сессионным ключом и жестко прописанным в бинарнике трояна DWORD. После расшифровки структура заголовка остается прежней. Итоговая полезная нагрузка шифруется по алгоритму Zeus VisualEncrypt, затем - с помощью случайного 256-битного RC4-ключа, который, в свою очередь, шифруется на жестко прописанном 1024-битном RSA-публичном ключе.
Кроме того, Zloader теперь поддерживает протокол WebSockets для установки соединения с C2-сервером. Это позволяет трояну маскировать свой трафик под обычные веб-сокеты, активно используемые в современном веб-трафике, что усложняет его обнаружение сетевыми системами защиты.
Заключение
Эволюция Zloader из узкоспециализированного банковского трояна в многофункциональный инструмент для комплексных атек свидетельствует о общей тенденции в киберпреступности. Современные версии демонстрируют возросшую изощренность в вопросах скрытности и обхода систем защиты. Целевой характер атак делает их особенно опасными для корпоративного сектора, поскольку конечной целью часто является развертывание ransomware. Организациям рекомендуется усилить мониторинг сетевой активности, особенно DNS-трафика и подозрительных WebSocket-соединений, а также применять решения для анализа поведения приложений, способные выявлять сложные техники обфускации.
Индикаторы компрометации
Domains
- adsemail.com
- adsmarks.com
- dt1.automotosport.net
SHA256
- 01fc5c5fd03b793437ed707233d067b330fb68a2de87e9d8607c6b75caca6356
- 86ffd411b42d8d06bdb294f48e79393adeea586c56c5c75c1a68ce6315932881