Анализ вредоносного ПО Thunder

BOOX

Стаж на ФС с 2012 года
Команда форума
Служба безопасности
Private Club
Регистрация
23/1/18
Сообщения
28.116
Репутация
11.520
Реакции
61.244
RUB
50

Сводка​


13-го апреля 2023 года в мессенджере Telegram обнаружена рассылка с архивом 这几笔错误的账单我圈出来了你看看.zip:

Screenshot_5.png

Рисунок 1 – Сообщение с архивом

В результате анализа удалось выяснить, что архив содержит вредоносное программное обеспечение (троян), нацеленное на пользователей ОС семейства Windows, краткая схема работы которого представлена на следующем рисунке:

2.jpg

Рисунок 2 – Схема работы ВПО

где 1 – получение архива, 2 – ручное извлечение и запуск пользователем загрузчика ВПО, 3 – подгрузка ВПО с сервера злоумышленника в сети CloudFlare, 4 – передача управления основной вредоносной программе, 5 – подключение к серверу управления и получение команд по нестандартному протоколу поверх TCP-транспорта. Сам вредоносный код при этом скрыт несколькими слоями упаковки и осуществляет закрепление в системе через планировщик задач.

Данный троян предоставляет злоумышленникам гибкие возможности по удалённому контролю и получению информации в системе, в том числе – чтение, изменение и создание файлов и процессов, активация RDP и других стандартных сервисов администрирования, осуществление сетевой активности и запуск сетевых сервисов, логирование нажатий клавиш и создание скриншотов экрана, запись звука, создание и удаление пользователей, получение аутентификационной информации, модификация реестра Windows.

Технический анализ​

Загрузка

В архиве находится одноимённый EXE файл (MD5: 50351169d2ee00143091254fc7e8b3ab). Если пользователь запустит файл, то программа скачает ряд файлов с сервера imgcache.vip033324[.]xyz:

Screenshot_6.png

Рисунок 1 – Фрагмент дизассемблированного кода загрузчика

Перечень загружаемых файлов и путей их сохранения:

URL на сервере Локальный путь сохранения файла в директорию C:\\ProgramData\\MD5
/picturess/2023/30.45.txtsetting.ini9dd530e124f1c6425e975fa9b66cee13
/picturess/2023/LiveUpdate.exeThunder\\LiveUpdate.exe, ThunderUpdate\\LiveUpdate.exe96e4b47a136910d6f588b40d872e7f9d
/picturess/2023/Mediax.xmlThunder\\Media.xml3668799602e1e5b94bf893141b4b76e6
/picturess/2023/RSD.xmlThunderUpdate\\Media.xml481b4106e3f1e40a98e3e89c385ecc7b
/picturess/2023/update.logThunder\\update.log8c4862a32095d0b71fcf8fb0b244161a
/picturess/2023/LiveUpdate360.datThunder\\LiveUpdate.dat, ThunderUpdate\\LiveUpdate.datf149d3f3ef0361ebe4d346811f29b527

Распаковка LiveUpdate
После этого вредонос запускает скачанную программу LiveUpdate.exe. Эта программа обфусцирована с помощью упаковщика с открытым исходным кодом UPX.

Распаковка LiveUpdate.dat
После самораспаковки UPX, LiveUpdate.exe разархивирует и загружает в память содержимое файла LiveUpdate.dat, являющегося ZIP-архивом, зашифрованным с паролем “3D9E9F5F9B2B40E1A9158385E2E4B660”.

Screenshot_51112124.png

Рисунок 2 – Фрагмент дизассемблированного кода LiveUpdate.exe

Из архива в память загружаются два файла – _TUProj.dat (80 КБ) и _TUProjDT.dat (4 байта). В файле _TUProj.dat располагаются различные скрипты LUA, исполняемые вкомпилированной в LiveUpdate.exe виртуальной машиной языка LUA. В том числе среди скриптов обнаруживается ClientScript:

Screenshot_7.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

Рисунок 4 – Чтение и корректировка файла Media.xml в коде g_table_char

После исправления обнаруживается, что данный файл является исполняемым файлом Windows формата PE.

Screenshot_9.png

Рисунок 5 – Фрагмент исправленного заголовка Media.xml


Распаковка update.log

Далее загруженный файл Media.xml получает управление в своей точке входа и загружает файл update.log, повторяя описанную ранее процедуру декодирования с байтом 0x30 для всего файла.

Screenshot_10.png

Рисунок 6 – Декодирование update.log

Данный файл после декодирования также представляет из себя исполняемую библиотеку MS Windows, в которую передаётся управление. Расшифрование внутреннего файла в update.log Большая часть библиотеки update.log также зашифрована, после дизассемблирования в ней можно обнаружить лишь 28 функций. При её запуске происходит циклическое расшифрование 1105920 байт по адресу 0x04010A0 XORом на 40-битном ключе 0xBE16CF52CD:


Screenshot_11.png

Рисунок 7 – Расшифрование в update.log

Расшифрованные данные так же представляют из себя DLL-библиотеку. Единственной экспортируемой процедурой этой библиотеки (помимо DLLMain) является процедура под названием Shellex. Далее управление переходит в неё.

Закрепление

Вредонос закрепляет свой запуск в системе путём добавления задач ThunderLiveUpdate и “Ñ¸À׸üзþÎñ” (имя нечитаемо, вероятно, из-за ошибки кодировки).

Screenshot_13.png


Взаимодействие с C2

Вредонос получает IP-адрес сервера злоумышленников из скачанного на первом этапе файла setting.ini:

Screenshot_12.png

Рисунок 8 – IP-адрес сервера злоумышленников в setting.ini

Вредоносный агент взаимодействует с сервером злоумышленника по нестандартному TCP-протоколу (порт 18076):


Screenshot_13.png

Рисунок 9 – Фрагмент трафика взаимодействия с сервером злоумышленников

В результате статического анализа кода уточнён формат данного протокола. Все данные при отправке кодируются по 1 байту в соответствии со следующим кодом:

Screenshot_14.png

Рисунок 10 – Кодирование / Декодирование пакета

Если декодировать таким образом представленный ранее пакет, то можно обнаружить следующие данные:

Screenshot_15.png

Рисунок 11 – Фрагмент декодированного пакета

Первые три байта 0x687620 являются сигнатурой протокола “hx ” (в закодированном виде – 0xF6E6AE). Её инициализация также обнаружена в коде:


Screenshot_16.png

Рисунок 12 – Инициализация сигнатуры протокола

По этой сигнатуре и порту назначения возможно обнаружение такого трафика в сети. Впрочем, в других версиях и модификациях ВПО эти данные могут быть изменены. Следующие 4 байта заголовка – полный размер пакета в формате Little Endian (в приведённом выше примере – CB030000 = 0x3CB).

Анализ возможностей

В результате обратной разработки трояна выяснено, что после компрометации системы он предоставляет злоумышленнику достаточно широкие возможности по управлению системой, среди которых имеются, например:

  1. различные форматы удалённого администрирования;
  2. взаимодействие с периферийными устройствами;
  3. контроль файловой системы;
  4. осуществление сетевой активости;
  5. зачистка следов веб активности;
  6. логирование действий и запись экрана;
  7. похищение аутентификационных данных;
  8. обнаружение антивирусного ПО;
  9. подгрузки и выполнения произвольного кода.
В качестве одного из способов удалённого управления злоумышленник может при необходимости активировать сервис RDP на компьютере:

Screenshot_17.png

Рисунок 13 – Фрагмент процедуры активации RDP

Для аутентификации злоумышленник может создать произвольного пользователя или модифицировать гостевую учетную запись, активировать её и добавить в группу администраторов:

Screenshot_18.png

Рисунок 14 – Процедура активации учетной записи guest


Интересно также целевое назначение вредоноса. Ввиду того, что он ориентирован на китайских пользователей, в нем реализован функционал взаимодействия с китайской социальной сетью и мессенджером qq.com. В результате анализа различных скриптов автоматизации использования API qq.com (,
) удалось разобрать некоторые процедуры такого взаимодействия.

Сначала в процедуре осуществляется аутентификация в qq под всеми доступными аккаунтами текущего пользователя,

Screenshot_19.png

Рисунок 15 – Фрагмент процедуры аутентификации в qq.com

затем происходит получение списка друзей пользователя:

Screenshot_20.png

Рисунок 16 – Фрагмент процедуры получения списка друзей пользователя

и групп, в которых он состоит:

Screenshot_21.png

Рисунок 17 – Фрагмент процедуры получения групп пользователя

Для каждой группы предпринимается попытка получить список пользователей этой группы:

Screenshot_22.png

Рисунок 18 – Фрагмент процедуры получения списка пользователей группы

Среди прочего в троян встроены команды завершения процессов различных браузеров и очистки их кэша:

Screenshot_23.png

Рисунок 19 – Команды по очистке следов активности

Ввиду этого, вероятно, что злоумышленники также предполагают использовать зараженные устройства для осуществления веб-активности и похищения аутентификационной информации различных сервисов.


Идентификация

MD5-хеш исходного архива: 62275e818ff92c030f75fdb89cddd40b, на текущий момент некоторые антивирусные решения уже отмечают его как троян семейства “lotok” ( 5f9239884c60809b475ac/detection), однако подробной информации об этом ВПО нет.

Screenshot_24.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


 
  • Теги
    thunder анализ вредоносного по thunder
  • Сверху Снизу