Сводка
13-го апреля 2023 года в мессенджере Telegram обнаружена рассылка с архивом 这几笔错误的账单我圈出来了你看看.zip:
![Screenshot_5.png Screenshot_5.png](https://securitymedia.org/upload/medialibrary/84a/gy477qs0ggkqz3p4t2qfqk90ko5t3o25.png)
Рисунок 1 – Сообщение с архивом
В результате анализа удалось выяснить, что архив содержит вредоносное программное обеспечение (троян), нацеленное на пользователей ОС семейства Windows, краткая схема работы которого представлена на следующем рисунке:
![2.jpg 2.jpg](https://securitymedia.org/upload/medialibrary/6a3/300ccg4961byisb8p3z274czpv3cev30.jpg)
Рисунок 2 – Схема работы ВПО
где 1 – получение архива, 2 – ручное извлечение и запуск пользователем загрузчика ВПО, 3 – подгрузка ВПО с сервера злоумышленника в сети CloudFlare, 4 – передача управления основной вредоносной программе, 5 – подключение к серверу управления и получение команд по нестандартному протоколу поверх TCP-транспорта. Сам вредоносный код при этом скрыт несколькими слоями упаковки и осуществляет закрепление в системе через планировщик задач.
Данный троян предоставляет злоумышленникам гибкие возможности по удалённому контролю и получению информации в системе, в том числе – чтение, изменение и создание файлов и процессов, активация RDP и других стандартных сервисов администрирования, осуществление сетевой активности и запуск сетевых сервисов, логирование нажатий клавиш и создание скриншотов экрана, запись звука, создание и удаление пользователей, получение аутентификационной информации, модификация реестра Windows.
Технический анализ
ЗагрузкаВ архиве находится одноимённый EXE файл (MD5: 50351169d2ee00143091254fc7e8b3ab). Если пользователь запустит файл, то программа скачает ряд файлов с сервера imgcache.vip033324[.]xyz:
![Screenshot_6.png Screenshot_6.png](https://securitymedia.org/upload/medialibrary/99c/cvyzwh1ui3yjns8fe4n4ran712xlmkpc.png)
Рисунок 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”.
![Screenshot_51112124.png Screenshot_51112124.png](https://securitymedia.org/upload/medialibrary/6eb/elorey4wr17870mqe5jf9208om9y5nts.png)
Рисунок 2 – Фрагмент дизассемблированного кода LiveUpdate.exe
Из архива в память загружаются два файла – _TUProj.dat (80 КБ) и _TUProjDT.dat (4 байта). В файле _TUProj.dat располагаются различные скрипты LUA, исполняемые вкомпилированной в LiveUpdate.exe виртуальной машиной языка LUA. В том числе среди скриптов обнаруживается ClientScript:
![Screenshot_7.png Screenshot_7.png](https://securitymedia.org/upload/medialibrary/2f4/en32xute7jhmgtjp2mchrihm4aqml8gx.png)
Рисунок 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).
![Screenshot_8.png Screenshot_8.png](https://securitymedia.org/upload/medialibrary/35e/h0p7xn6wa6wci67nom1cy9ax3xhez67f.png)
Рисунок 4 – Чтение и корректировка файла Media.xml в коде g_table_char
После исправления обнаруживается, что данный файл является исполняемым файлом Windows формата PE.
![Screenshot_9.png Screenshot_9.png](https://securitymedia.org/upload/medialibrary/57a/vr777wqml0rnz3q53yeem1sercdt22ho.png)
Рисунок 5 – Фрагмент исправленного заголовка Media.xml
Распаковка update.log
Далее загруженный файл Media.xml получает управление в своей точке входа и загружает файл update.log, повторяя описанную ранее процедуру декодирования с байтом 0x30 для всего файла.
![Screenshot_10.png Screenshot_10.png](https://securitymedia.org/upload/medialibrary/6d7/rwuzrb50g0t50riyronh3hhxh5nvdty2.png)
Рисунок 6 – Декодирование update.log
Данный файл после декодирования также представляет из себя исполняемую библиотеку MS Windows, в которую передаётся управление. Расшифрование внутреннего файла в update.log Большая часть библиотеки update.log также зашифрована, после дизассемблирования в ней можно обнаружить лишь 28 функций. При её запуске происходит циклическое расшифрование 1105920 байт по адресу 0x04010A0 XORом на 40-битном ключе 0xBE16CF52CD:
![Screenshot_11.png Screenshot_11.png](https://securitymedia.org/upload/medialibrary/0fe/s0wljwc1ry076jy7yyh89e1f790pjjx8.png)
Рисунок 7 – Расшифрование в update.log
Расшифрованные данные так же представляют из себя DLL-библиотеку. Единственной экспортируемой процедурой этой библиотеки (помимо DLLMain) является процедура под названием Shellex. Далее управление переходит в неё.
Закрепление
Вредонос закрепляет свой запуск в системе путём добавления задач ThunderLiveUpdate и “Ñ¸À׸üзþÎñ” (имя нечитаемо, вероятно, из-за ошибки кодировки).
![Screenshot_13.png Screenshot_13.png](https://securitymedia.org/upload/medialibrary/8bf/jagp6jltxhnp83myibx2pmbrwhw4olsk.png)
Взаимодействие с C2
Вредонос получает IP-адрес сервера злоумышленников из скачанного на первом этапе файла setting.ini:
![Screenshot_12.png Screenshot_12.png](https://securitymedia.org/upload/medialibrary/8cb/gtm45er05m0tpxxjcvn12yf9wm3v48me.png)
Рисунок 8 – IP-адрес сервера злоумышленников в setting.ini
Вредоносный агент взаимодействует с сервером злоумышленника по нестандартному TCP-протоколу (порт 18076):
![Screenshot_13.png Screenshot_13.png](https://securitymedia.org/upload/medialibrary/339/1jzq1rcmey19tlf958sgg2u6vwtew6cd.png)
Рисунок 9 – Фрагмент трафика взаимодействия с сервером злоумышленников
В результате статического анализа кода уточнён формат данного протокола. Все данные при отправке кодируются по 1 байту в соответствии со следующим кодом:
![Screenshot_14.png Screenshot_14.png](https://securitymedia.org/upload/medialibrary/610/ak9290he7bwzl7wpkh48yj5mgiyrf7ph.png)
Рисунок 10 – Кодирование / Декодирование пакета
Если декодировать таким образом представленный ранее пакет, то можно обнаружить следующие данные:
![Screenshot_15.png Screenshot_15.png](https://securitymedia.org/upload/medialibrary/86b/nc5fv469zl48lq2whz3yd57r9y043w3y.png)
Рисунок 11 – Фрагмент декодированного пакета
Первые три байта 0x687620 являются сигнатурой протокола “hx ” (в закодированном виде – 0xF6E6AE). Её инициализация также обнаружена в коде:
![Screenshot_16.png Screenshot_16.png](https://securitymedia.org/upload/medialibrary/e13/eq3lxht0b4l32e3vqhk1dira1o0vcs6k.png)
Рисунок 12 – Инициализация сигнатуры протокола
По этой сигнатуре и порту назначения возможно обнаружение такого трафика в сети. Впрочем, в других версиях и модификациях ВПО эти данные могут быть изменены. Следующие 4 байта заголовка – полный размер пакета в формате Little Endian (в приведённом выше примере – CB030000 = 0x3C
![Cool B) B)](/styles/emo/default/cool.gif)
Анализ возможностей
В результате обратной разработки трояна выяснено, что после компрометации системы он предоставляет злоумышленнику достаточно широкие возможности по управлению системой, среди которых имеются, например:
- различные форматы удалённого администрирования;
- взаимодействие с периферийными устройствами;
- контроль файловой системы;
- осуществление сетевой активости;
- зачистка следов веб активности;
- логирование действий и запись экрана;
- похищение аутентификационных данных;
- обнаружение антивирусного ПО;
- подгрузки и выполнения произвольного кода.
![Screenshot_17.png Screenshot_17.png](https://securitymedia.org/upload/medialibrary/c37/nrp0kxqbwwtq24irtsfeazk3pc11bj7i.png)
Рисунок 13 – Фрагмент процедуры активации RDP
Для аутентификации злоумышленник может создать произвольного пользователя или модифицировать гостевую учетную запись, активировать её и добавить в группу администраторов:
![Screenshot_18.png Screenshot_18.png](https://securitymedia.org/upload/medialibrary/890/87zgjqu13rrwzn1xodbpgshxsmue4l44.png)
Рисунок 14 – Процедура активации учетной записи guest
Интересно также целевое назначение вредоноса. Ввиду того, что он ориентирован на китайских пользователей, в нем реализован функционал взаимодействия с китайской социальной сетью и мессенджером qq.com. В результате анализа различных скриптов автоматизации использования API qq.com (,
Для просмотра ссылки необходимо нажать
Вход или Регистрация
) удалось разобрать некоторые процедуры такого взаимодействия. Сначала в процедуре осуществляется аутентификация в qq под всеми доступными аккаунтами текущего пользователя,
![Screenshot_19.png Screenshot_19.png](https://securitymedia.org/upload/medialibrary/2f7/d50pliz2xfhbsy5r3eqjz0tzmmz9ij27.png)
Рисунок 15 – Фрагмент процедуры аутентификации в qq.com
затем происходит получение списка друзей пользователя:
![Screenshot_20.png Screenshot_20.png](https://securitymedia.org/upload/medialibrary/13d/0ocgalau1k2u54v5m8lkb048i6xfrd58.png)
Рисунок 16 – Фрагмент процедуры получения списка друзей пользователя
и групп, в которых он состоит:
![Screenshot_21.png Screenshot_21.png](https://securitymedia.org/upload/medialibrary/095/0t562vfvewjriy2s5i8baz04kmq2mvl7.png)
Рисунок 17 – Фрагмент процедуры получения групп пользователя
Для каждой группы предпринимается попытка получить список пользователей этой группы:
![Screenshot_22.png Screenshot_22.png](https://securitymedia.org/upload/medialibrary/9be/3s9uq60p61bbjunebj7spx62a9xdbvv2.png)
Рисунок 18 – Фрагмент процедуры получения списка пользователей группы
Среди прочего в троян встроены команды завершения процессов различных браузеров и очистки их кэша:
![Screenshot_23.png Screenshot_23.png](https://securitymedia.org/upload/medialibrary/1f1/ucmyyt8chf7ai7ludeay3j6mkyy0mvcx.png)
Рисунок 19 – Команды по очистке следов активности
Ввиду этого, вероятно, что злоумышленники также предполагают использовать зараженные устройства для осуществления веб-активности и похищения аутентификационной информации различных сервисов.
Идентификация
MD5-хеш исходного архива: 62275e818ff92c030f75fdb89cddd40b, на текущий момент некоторые антивирусные решения уже отмечают его как троян семейства “lotok” (
Для просмотра ссылки необходимо нажать
Вход или Регистрация
5f9239884c60809b475ac/detection), однако подробной информации об этом ВПО нет. ![Screenshot_24.png Screenshot_24.png](https://securitymedia.org/upload/medialibrary/7e2/pgobwpk45zjqoyttxg5gkyismpcqodys.png)
Рисунок 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 |
Для просмотра ссылки необходимо нажать
Вход или Регистрация