Сводка
13-го апреля 2023 года в мессенджере Telegram обнаружена рассылка с архивом 这几笔错误的账单我圈出来了你看看.zip:
Рисунок 1 – Сообщение с архивом
В результате анализа удалось выяснить, что архив содержит вредоносное программное обеспечение (троян), нацеленное на пользователей ОС семейства Windows, краткая схема работы которого представлена на следующем рисунке:
Рисунок 2 – Схема работы ВПО
где 1 – получение архива, 2 – ручное извлечение и запуск пользователем загрузчика ВПО, 3 – подгрузка ВПО с сервера злоумышленника в сети CloudFlare, 4 – передача управления основной вредоносной программе, 5 – подключение к серверу управления и получение команд по нестандартному протоколу поверх TCP-транспорта. Сам вредоносный код при этом скрыт несколькими слоями упаковки и осуществляет закрепление в системе через планировщик задач.
Данный троян предоставляет злоумышленникам гибкие возможности по удалённому контролю и получению информации в системе, в том числе – чтение, изменение и создание файлов и процессов, активация RDP и других стандартных сервисов администрирования, осуществление сетевой активности и запуск сетевых сервисов, логирование нажатий клавиш и создание скриншотов экрана, запись звука, создание и удаление пользователей, получение аутентификационной информации, модификация реестра Windows.
Технический анализ
ЗагрузкаВ архиве находится одноимённый EXE файл (MD5: 50351169d2ee00143091254fc7e8b3ab). Если пользователь запустит файл, то программа скачает ряд файлов с сервера imgcache.vip033324[.]xyz:
Рисунок 1 – Фрагмент дизассемблированного кода загрузчика
Перечень загружаемых файлов и путей их сохранения:
URL на сервере
Для просмотра ссылки необходимо нажать
Вход или Регистрация
| Локальный путь сохранения файла в директорию C:\\ProgramData\\ | MD5 |
/picturess/2023/30.45.txt | setting.ini | 9dd530e124f1c6425e975fa9b66cee13 |
/picturess/2023/LiveUpdate.exe | Thunder\\LiveUpdate.exe, ThunderUpdate\\LiveUpdate.exe | 96e4b47a136910d6f588b40d872e7f9d |
/picturess/2023/Mediax.xml | Thunder\\Media.xml | 3668799602e1e5b94bf893141b4b76e6 |
/picturess/2023/RSD.xml | ThunderUpdate\\Media.xml | 481b4106e3f1e40a98e3e89c385ecc7b |
/picturess/2023/update.log | Thunder\\update.log | 8c4862a32095d0b71fcf8fb0b244161a |
/picturess/2023/LiveUpdate360.dat | Thunder\\LiveUpdate.dat, ThunderUpdate\\LiveUpdate.dat | f149d3f3ef0361ebe4d346811f29b527 |
Распаковка LiveUpdate
После этого вредонос запускает скачанную программу LiveUpdate.exe. Эта программа обфусцирована с помощью упаковщика с открытым исходным кодом UPX.
Распаковка LiveUpdate.dat
После самораспаковки UPX, LiveUpdate.exe разархивирует и загружает в память содержимое файла LiveUpdate.dat, являющегося ZIP-архивом, зашифрованным с паролем “3D9E9F5F9B2B40E1A9158385E2E4B660”.
Рисунок 2 – Фрагмент дизассемблированного кода LiveUpdate.exe
Из архива в память загружаются два файла – _TUProj.dat (80 КБ) и _TUProjDT.dat (4 байта). В файле _TUProj.dat располагаются различные скрипты LUA, исполняемые вкомпилированной в LiveUpdate.exe виртуальной машиной языка LUA. В том числе среди скриптов обнаруживается ClientScript:
Рисунок 3 – Фрагмент LUA-скрипта из _TUProj.dat
В представленном коде происходит выделение памяти на куче для массива чисел из переменной g_table_char (24), преобразуемого в массив байт и загружаемого в выделенную память (29). После загрузки по данному адресу создаётся новый поток выполнения (38). После этого скрипт в цикле загружает картинку с сайта baidu.com (генерация мусорного легитимного трафика).
Распаковка Media.xml
Новый поток кода, полученный из переменной g_table_char, считывает скачанный ранее файл Media.xml из текущей рабочей директории программы и правит первые 4 байта файла: buf = (buf ^ 0x30) + 0x30 ( i <= 4).
Рисунок 4 – Чтение и корректировка файла Media.xml в коде g_table_char
После исправления обнаруживается, что данный файл является исполняемым файлом Windows формата PE.
Рисунок 5 – Фрагмент исправленного заголовка Media.xml
Распаковка update.log
Далее загруженный файл Media.xml получает управление в своей точке входа и загружает файл update.log, повторяя описанную ранее процедуру декодирования с байтом 0x30 для всего файла.
Рисунок 6 – Декодирование update.log
Данный файл после декодирования также представляет из себя исполняемую библиотеку MS Windows, в которую передаётся управление. Расшифрование внутреннего файла в update.log Большая часть библиотеки update.log также зашифрована, после дизассемблирования в ней можно обнаружить лишь 28 функций. При её запуске происходит циклическое расшифрование 1105920 байт по адресу 0x04010A0 XORом на 40-битном ключе 0xBE16CF52CD:
Рисунок 7 – Расшифрование в update.log
Расшифрованные данные так же представляют из себя DLL-библиотеку. Единственной экспортируемой процедурой этой библиотеки (помимо DLLMain) является процедура под названием Shellex. Далее управление переходит в неё.
Закрепление
Вредонос закрепляет свой запуск в системе путём добавления задач ThunderLiveUpdate и “Ñ¸À׸üзþÎñ” (имя нечитаемо, вероятно, из-за ошибки кодировки).
Взаимодействие с C2
Вредонос получает IP-адрес сервера злоумышленников из скачанного на первом этапе файла setting.ini:
Рисунок 8 – IP-адрес сервера злоумышленников в setting.ini
Вредоносный агент взаимодействует с сервером злоумышленника по нестандартному TCP-протоколу (порт 18076):
Рисунок 9 – Фрагмент трафика взаимодействия с сервером злоумышленников
В результате статического анализа кода уточнён формат данного протокола. Все данные при отправке кодируются по 1 байту в соответствии со следующим кодом:
Рисунок 10 – Кодирование / Декодирование пакета
Если декодировать таким образом представленный ранее пакет, то можно обнаружить следующие данные:
Рисунок 11 – Фрагмент декодированного пакета
Первые три байта 0x687620 являются сигнатурой протокола “hx ” (в закодированном виде – 0xF6E6AE). Её инициализация также обнаружена в коде:
Рисунок 12 – Инициализация сигнатуры протокола
По этой сигнатуре и порту назначения возможно обнаружение такого трафика в сети. Впрочем, в других версиях и модификациях ВПО эти данные могут быть изменены. Следующие 4 байта заголовка – полный размер пакета в формате Little Endian (в приведённом выше примере – CB030000 = 0x3C.
Анализ возможностей
В результате обратной разработки трояна выяснено, что после компрометации системы он предоставляет злоумышленнику достаточно широкие возможности по управлению системой, среди которых имеются, например:
- различные форматы удалённого администрирования;
- взаимодействие с периферийными устройствами;
- контроль файловой системы;
- осуществление сетевой активости;
- зачистка следов веб активности;
- логирование действий и запись экрана;
- похищение аутентификационных данных;
- обнаружение антивирусного ПО;
- подгрузки и выполнения произвольного кода.
Рисунок 13 – Фрагмент процедуры активации RDP
Для аутентификации злоумышленник может создать произвольного пользователя или модифицировать гостевую учетную запись, активировать её и добавить в группу администраторов:
Рисунок 14 – Процедура активации учетной записи guest
Интересно также целевое назначение вредоноса. Ввиду того, что он ориентирован на китайских пользователей, в нем реализован функционал взаимодействия с китайской социальной сетью и мессенджером qq.com. В результате анализа различных скриптов автоматизации использования API qq.com (,
Для просмотра ссылки необходимо нажать
Вход или Регистрация
) удалось разобрать некоторые процедуры такого взаимодействия. Сначала в процедуре осуществляется аутентификация в qq под всеми доступными аккаунтами текущего пользователя,
Рисунок 15 – Фрагмент процедуры аутентификации в qq.com
затем происходит получение списка друзей пользователя:
Рисунок 16 – Фрагмент процедуры получения списка друзей пользователя
и групп, в которых он состоит:
Рисунок 17 – Фрагмент процедуры получения групп пользователя
Для каждой группы предпринимается попытка получить список пользователей этой группы:
Рисунок 18 – Фрагмент процедуры получения списка пользователей группы
Среди прочего в троян встроены команды завершения процессов различных браузеров и очистки их кэша:
Рисунок 19 – Команды по очистке следов активности
Ввиду этого, вероятно, что злоумышленники также предполагают использовать зараженные устройства для осуществления веб-активности и похищения аутентификационной информации различных сервисов.
Идентификация
MD5-хеш исходного архива: 62275e818ff92c030f75fdb89cddd40b, на текущий момент некоторые антивирусные решения уже отмечают его как троян семейства “lotok” (
Для просмотра ссылки необходимо нажать
Вход или Регистрация
5f9239884c60809b475ac/detection), однако подробной информации об этом ВПО нет. Рисунок 20 – Идентификация трояна на VirtusTotal
Далее приведен перечень возможных индикаторов компрометации системы.
Создаваемые файлы
C:\ProgramData\setting.ini |
C:\ProgramData\Thunder\LiveUpdate.exe, |
C:\ProgramData\ThunderUpdate\LiveUpdate.exe |
C:\ProgramData\Thunder\Media.xml |
C:\ProgramData\ThunderUpdate\Media.xml |
C:\ProgramData\Thunder\update.log |
C:\ProgramData\Thunder\LiveUpdate.dat, |
C:\ProgramData\ThunderUpdate\LiveUpdate.dat |
Задачи в планировщике задач Windows
ThunderLiveUpdate |
ѸÀ׸üзþÎñ |
Сетевая коммуникация
imgcache.vip033324.xyz |
43.249.30.45 |
Для просмотра ссылки необходимо нажать
Вход или Регистрация