Ботнеты на основе TOR

в 14:30, , рубрики: Tor, Блог компании ESET NOD32, информационная безопасность, метки: ,

Ботнеты, использующие возможности анонимной сети TOR, не являются чем-то принципиально новым и уже обсуждались несолько лет назад на конференции Defcon 18 («Resilient Botnet Command and Control with Tor»). В прошлом году мы смогли подтвердить некоторые интересные факты, касающиеся использования этих идей в настоящих ботнетах используемых злоумышленниками. Эта тема уже обсуждалась в начале 2013 г. в блоге Rapid7 («Skynet, a Tor-powered botnet straight from Reddit»). В начале июля ресерчер Данчо Данчев опубликовал информацию о командных серверах C&C руткита, использующего TOR.

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

Нами было обнаружено два различных ботнета, которые используют сервисы TOR для работы с C&C. Речь идет о семействах вредоносных программ Win32/Atrax и Win32/Agent.PTA. Оба семейства имеют возможности по похищению вводимой пользователем информации в форму веб-страницы браузера. Александр Матросов и Антон Черепанов осуществили анализ этих вредоносных программ. Так как ботнет Atrax выглядит более сложным и интересным, мы начнем наш пост именно с его анализа.

Ботнеты на основе TOR

Win32/Atrax.A

Win32/Atrax.A представляет из себя интересный бэкдор, использующий TOR. Он устанавливается через специальный даунлоадер, который мы обнаруживаем как Win32/TrojanDownloader.Tiny.NIR. Точка входа даунлоадера довольно проста и приведена ниже на скриншоте.

Ботнеты на основе TOR

Более интересной информацией является тот факт, что доменное имя «kundenservice-paypal.com», жестко заданное в коде, зарегистрировано в середине Июня (12-Jun-2013). Название было дано, судя по всему, для того, чтобы выдать домен за службу поддержки клиентов PayPal.

Все компоненты троянской программы и даунлоадера были скомпилированы в Июле, согласно информации извлеченной из PE-заголовка.

Ботнеты на основе TOR

После загрузки и запуска на исполнение основного файла дроппера, процедура распаковки запускается для трех PE-модулей: клиента TOR и двух DLL модулей для x32 и x64. Для распаковки используется WinAPI RtlDecompressBuffer. Код функции распаковки выглядит следующим образом.

Ботнеты на основе TOR

Перед установкой дроппер выполняет простые проверки на предмет обнаружения виртуальной машины или активности отладчика. Идентификатор бота Bot ID представляет из себя хэш MD5, рассчитанный с помощью значений системного реестра DigitalProductID и MachineGuid. Граф вызовов для функции, которая заражает систему представлен ниже на скриншоте.

Ботнеты на основе TOR

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

Клиент TOR располагается в теле дроппера и хранится в директории %APPDATA% зашифрованным AES-файлом. Инициализация соединения с TOR происходит после проверки на предмет того запущен ли браузер и после этого осуществляется внедрение кода клиента TOR в контекст процесса браузера с передачей управления на него с использованием API ntdll!NtSetContextThread. Win32/Atrax.A поддерживает внедрение кода для x86 и x64 процессов.

Ботнеты на основе TOR

Все взаимодействие между командным C&C сервером и ботом организовано через специальный запрос HTTP. Прототип функции, которая отвечает за эту возможность, представлен ниже.

Ботнеты на основе TOR

Если второй параметр request_via_tor установлен в true, соединение с C&C будет производиться через TOR. В таком случае граф вызовов функций будет иметь вид.

Ботнеты на основе TOR

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

  • AUTHENTICATE – пароль для аутентификации.
  • SIGNAL NEWNYM – изменение цепи прокси-узлов.

Когда Atrax.A установил первое соединение с C&C, он посылает собранную информацию о зараженной системе по адресу в сети TOR.

Ботнеты на основе TOR

Не представляется возможным установить оригинальный адрес C&C или его домен при работе с TOR, но возможно использовать адрес, который генерируется в самой сети TOR для анализа. Нам удалось установить такой внутренний адрес и мы обнаружили рабочую панель управления для C&C.

Ботнеты на основе TOR

Название Atrax на картинке панели управления является главной причиной, почему мы выбрали имя Win32/Atrax.A для записи обнаружения вредоносного кода.

С точки зрения бота, Win32/Atrax.A поддерживает выполнение удаленных команд на скомпрометированном компьютере. Основная функция по разбору команд и их исполнения выглядит следующим образом.

Ботнеты на основе TOR

Список поддерживаемых удаленно команд выглядит следующим образом:

  • dlexec – загрузить и исполнить файл
  • dlrunmem – загрузить файл и произвести его внедрение в файл
  • dltorexec – загрузить исполняемый файл TOR и исполнить его
  • dltorrunmem — загрузить исполняемый файл TOR и внедрить его в браузер
  • update – обновить себя
  • install – загрузить файл, зашифровать его с помощью AES и сохранить в %APPDATA%
  • installexec — загрузить файл, зашифровать его с помощью AES, сохранить в %APPDATA% и затем исполнить
  • kill – завершить все потоки

Мы смогли скачать еще несколько плагинов, которые используются вредоносным кодом для разных целей.

Ботнеты на основе TOR

Первый плагин представляет из себя граббер форм, а второй предназначен для кражи паролей. Эти загруженные модули были скомпилированы в Июле, о чем намекает временная отметка в заголовке.

Ботнеты на основе TOR
[граббер форм]

Ботнеты на основе TOR
[плагин кражи паролей]

Win32/Atrax.A является интересным примером вредоносного кода, который использует TOR при организации ботнета и применяет AES шифрование с уникальным ключом, который зависит от параметров оборудования, для дополнительных плагинов.

Win32/Agent.PTA

Еще одно семейство, которое мы отслеживали в июле и которое использует Tor называется Win32/Agent.PTA. Это семейство не является новым и уже отслеживалось нами с 2012 года. В этом же году были обнаружены новые возможности этого вредоносного кода по работе с Tor. Он использует сервис скрытого протокола Tor для работы с C&C. Agent.PTA содержит встроенную в тело информацию о конфигурации, зашифрованную с помощью RC4 с C&C адресами внутри сети TOR. Расшифрованная конфигурационная информация выглядит следующим образом.

Ботнеты на основе TOR

Win32/Agent.PTA представляет из себя простой граббер форм с возможностью загрузки дополнительных плагинов. Эта троянская программа может активизировать режим прокси SOCKS5 путем получения специальной команды от C&C.

Заключение

В этом году мы уже видели ботнеты, которые используют TOR, но этим летом мы наблюдали именно рост количества подобных вредоносных программ. С технической точки зрения подобные ботнеты довольно сложны для расследований, как и представляет сложность обнаружение истинного местоположения C&C. Но на примере ботнета Win32/Atrax.A мы продемонстрировали тот факт, что способы анализа протоколов взаимодействия не притерпели изменений и старые приемы работы с адресами в сети TOR актуальны.

Автор: esetnod32

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js