• Главная
  • Исследования
  • PT ESC Threat Intelligence
  • Выявлен вирус-шпион TgRat

Выявлен вирус-шпион TgRat

Дата публикации 6 декабря 2022

Введение

Во время одного из расследований команда по реагированию на инциденты ИБ (экспертный центр безопасности Positive Technologies — PT Expert Security Center, PT ESC) выявила хакерский инструментарий, использующий Telegram для управления бэкдорами. Для проникновения и перемещения по сети злоумышленники применяли как уже известные вредоносные программы, в частности Impacket, Mimikatz, инструменты для туннелирования сетевого трафика (Chisel1, dnscat22, Gost3 и т. д.), так и новые, пока не особо распространенные вредоносы — небольшие RAT (remote access trojan), использующие Telegram API для выгрузки данных. Анализ вредоносов проведен командой исследования киберугроз (PT ESC).

Дроппер TgRAT

На первом этапе дроппер проверяет параметры (аргументы), с которыми был запущен: это влияет на промежуточный этап персиста. Если входные аргументы есть, начинается этап add_payload (назван по имени основной функции, его выполняющей), если нет, то происходят инициализация и закрепление. Дроппер:

  1. устанавливает себя в автозагрузке с параметром " -install=false " (рис. 1);
  2. формирует имя файла с полезной нагрузкой (производится парсинг пути и имени текущего процесса, модификация данного пути с подстановкой имени полезной нагрузки, которая вшита в код);
  3. расшифровывает бинарные данные, содержащиеся в теле программы, с помощью алгоритма AES в режиме CTR (вектор инициализации вшит в тело программы);
  4. записывает расшифрованные данные в файл и передает управление полезной нагрузке.
Закрепление дроппера
Рисунок 1. Закрепление дроппера

Бэкдор TgRAT

Анализ показал, что файл с полезной нагрузкой представляет собой небольшой RAT, использующий Telegram в качестве контрольного сервера. Сервером является закрытая группа в мессенджере, коммуникация осуществляется с помощью Telegram API (библиотека github.com/wrwrabbit/telegram-bot-api-go). Мы видели несколько модификаций этого ВПО, отличающихся архитектурой; тем не менее, функциональность у них идентичная.

В самом начале своей работы RAT проверяет имя узла, на котором он запущен. Если имя не совпадает со значением, жестко вшитым в тело программы, ВПО завершает свою работу. Таким образом, очевидно, что вредонос написан целенаправленно под конкретные компьютеры.

Токен и ID чата для коммуникации могут быть считаны из файла с именем token.sys, который должен лежать в каталоге с вредоносом. В случае если файла нет, ВПО использует те токен и ID, которые содержатся в коде (рис. 2).

Формирование параметров коммуникации
Рисунок 2. Формирование параметров коммуникации

После установки соединения ВПО получает имена команд и аргументы (при необходимости).

Отдельно стоит рассмотреть формат хранения и исполнения команд. На этапе инициализации необходимых параметров, переменных и библиотек, ВПО формирует структуру данных определенного вида, идентичную map (рис. 3).

Формат хранения указателей на функции — обработчики команд
Рисунок 3. Формат хранения указателей на функции — обработчики команд

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

ВПО получает имя команды, после чего, используя методы доступа к вышеописанной структуре, получает адрес функции-обработчика (на рис. 4 переменная pfn_CmdFunc_handler). Затем производится ее вызов.

Получение адреса функции-обработчика и ее вызов
Рисунок 4. Получение адреса функции-обработчика и ее вызов

Изучение кода инициализации структуры с адресами функций и их именами значительно облегчило выявление типов команд, которые ВПО выполняет:

  • получение информации о зараженном компьютере (пример на рис. 5);
  • подключение (bind) к определенной группе в Telegram, служебное сообщение об ошибке подключения;
  • самозавершение (kill <PID>);
  • сохранение сообщения в виде файла;
  • самообновление;
  • запуск шелла;
  • выполнение команды в шелле и сохранение результата в виде файла;
  • запуск процесса;
  • сон в течение определенного времени;
  • перезапуск бота;
  • скачивание файла;
  • снимок экрана.
Собираемая информация
Рисунок 5. Собираемая информация

Выводы

Даже несмотря на то, что хакеры используют легитимные протоколы для управления своими инструментами и для выгрузки данных, эту атаку можно с легкостью выявить при минимальном уровне мониторинга трафика. Чтобы защититься от нее, необходимо:

  • Покрывать антивирусными средствами защиты все узлы, включая серверы: хакеры вполне успешно продолжают использовать обычные, прекрасно знакомые любому антивирусу утилиты.
  • Наблюдать за трафиком с серверов в интернете на периметре: в большинстве инфраструктур трафик с внутренних серверов на Telegram-серверы — история ненормальная.
  • Наблюдать за трафиком внутри сети: при таком подходе можно выявлять сетевые туннели и нестандартное общение между серверами.
  1. https://github.com/jpillora/chisel
  2. https://github.com/iagox86/dnscat2
  3. https://github.com/go-gost/gost
Статьи по теме
  • 4 августа 2022 Летающие в «облаках»: APT31 вновь использует облачное хранилище, атакуя российские компании
  • 27 апреля 2021 «Работодатель года» Атака Lazarus Group
  • 24 октября 2019 Операция TA505: сетевая инфраструктура группировки. Часть 3
Поделиться:
Ссылка скопирована
Статьи по теме
16 июня 2020

Cobalt: обновление тактик и инструментов

27 апреля 2021

«Работодатель года» Атака Lazarus Group

4 августа 2022

Летающие в «облаках»: APT31 вновь использует облачное хранилище, атакуя российские компании

Вернуться к выбору статей
Решения
  • PT XDR
  • Построение центра ГосСОПКА
  • Комплекс для раннего выявления сложных угроз
  • Безопасность объектов КИИ
  • PT Industrial Cybersecurity Suite
  • Безопасность Linux-систем
  • Выполнение Указа № 250
Продукты
  • MaxPatrol 8
  • MaxPatrol SIEM
  • PT ISIM
  • MaxPatrol O2
  • PT MultiScanner
  • ПТ Ведомственный центр
  • MaxPatrol SIEM All-in-One
  • MaxPatrol VM
  • PT Network Attack Discovery
  • PT Application Firewall
  • PT Application Inspector
  • PT BlackBox
  • PT Platform 187
  • XSpider
  • PT Sandbox
  • PT Threat Intelligence Feeds
Сервисы
  • Непрерывный анализ защищенности бизнеса
  • Услуги PT Expert Security Center
  • Исследование угроз и уязвимостей аппаратных решений
  • Техническая поддержка
Исследования
  • Аналитические статьи
  • База знаний
  • Словарь терминов ИБ
  • Хакерские группировки
  • PT ESC Threat Intelligence
  • Блог
  • Вебинары
  • Уязвимости и угрозы
Партнеры
  • Авторизованные партнеры
  • Дистрибьюторы
  • Технологические партнеры
  • MSSP-партнеры
  • Авторизованные учебные центры
  • Стать партнером
  • Вход в личный кабинет
О компании
  • История
  • Клиенты
  • Мероприятия
  • Вакансии
  • Новости
  • Пресс-центр
  • Контакты
  • Документация и материалы
  • Долговые инструменты
Инвесторам
Positive Technologies
© Positive Technologies, 2002—2023.
Мы в социальных сетях:
  • Сообщить об уязвимости
  • Справочный портал
  • Правила использования
  • Политика конфиденциальности
  • Согласие на сбор и обработку персональных данных
  • Согласие на получение рассылки рекламно-информационных материалов
  • Политика использования файлов cookie
  • Юридическая информация
  • Информация в ленте Интерфакс
  • Карта сайта
© Positive Technologies, 2002—2023.
  • Сообщить об уязвимости
  • Справочный портал
  • Правила использования
  • Политика конфиденциальности
  • Согласие на сбор и обработку персональных данных
  • Согласие на получение рассылки рекламно-информационных материалов
  • Политика использования файлов cookie
  • Юридическая информация
  • Информация в ленте Интерфакс
  • Карта сайта