Следите За Деньгами: Как Группа Ртм Начала Прятать Адреса C&C-Серверов В Криптокошельке

Киберпреступная группировка РТМ с 2015 года крадет деньги у банковских клиентов.

Большинство ее жертв — российские компании.

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

В этой статье мы остановимся на методах получения адресов командных (C&C) серверов РТМ.

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



Что такое РТМ

По своей сути RTM представляет собой банковский троян.

Основная цель программы — позволить злоумышленникам манипулировать платежными поручениями компании-жертвы, чтобы незаметно перевести ее средства на счета киберпреступников.

Как правило, RTM доставляется на компьютер жертвы через списки рассылки, реже через взломанные сайты (например, новостные издания) или фейковые ресурсы для бухгалтеров.

К письмам преступники прикрепляют запакованный исполняемый файл.

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



Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Примеры исполняемых файлов с расширением .

exe, распространяемых группой RTM Файлы примеров на рисунке расположены в порядке распространения.

Большую часть времени исполняемые файлы RTM были упакованы специальным упаковщиком и замаскированы под PDF-документ. В начале 2019 года стали появляться первые образцы, представляющие собой самораспаковывающийся архив RAR и замаскированный под файл в формате DOCX. В настоящее время RTM распространяется как самораспаковывающийся CAB-архив.



Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Бинарное представление файла «Платеж 11.06.exe» После запуска исполняемый файл копирует упакованную DLL на диск и запускает ее с помощью утилиты rundll32.exe. Обычно внутреннее имя этой библиотеки — core.dll. Дальнейшая его работа происходит в адресном пространстве процесса rundll32.exe. Именно core.dll осуществляет первичное взаимодействие с сервером управления RTM, через который программа получает от злоумышленников команды и дополнительные модули.

Модули поставляются в зашифрованном виде и могут запускаться различными способами.

Эти компоненты дают злоумышленникам возможность удаленно управлять взломанным компьютером, подменять платежные документы в системе 1С и т.д.

Способы найти управляющий сервер



RSS

В первых версиях RTM для обновления адресов управляющих серверов использовался RSS-канал.

Злоумышленники создали в LiveJournal блог, содержащий зашифрованные адреса C&C. Для получения новых адресов серверов управления был отправлен запрос на hxxps://.

livejournal[.

]com/data/rss/ и был обработан ответ в следующем формате (например https://f72bba81c921.livejournal.com/data/rss/ ):

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Содержимое RSS-канала.

Поле описания содержит зашифрованные адреса серверов управления.



Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Расшифрованные строки с исходным адресом управляющего сервера и адресом RSS-канала.



.

кусочек

В марте 2016 года РТМ начала использовать домены зоны .

bit в качестве адресов управляющих серверов.

Их поддерживает альтернативный DNS-регистратор Namecoin, основанный на технологии блокчейн.

Система децентрализована, поэтому домены .

bit сложно заблокировать.

IP-адреса серверов управления на .

bit RTM были получены одним из двух способов:

  • через API обозревателя блоков Namecoin;
  • посредством разрешения доменных имен с использованием специальных DNS-серверов.



Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Функция получения IP-адресов серверов управления В функции получения IP-адресов управляющих серверов через API Block Explorer API Namecoin контент, расположенный по адресу hxxps://namecoin.cyphrs[.

]com/api/name_show/d/stat-counter-7 (на примере домена stat-counter-7[.

]bit):

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Функция получения IP-адресов управляющих серверов через API Block Explorer API IP-адреса сервера управления получаются из тела ответа.

Помимо запросов на hxxps://namecoin.cyphrs[.

]com/api/name_show/d/ злоумышленники также использовали запросы на hxxps://namecha[.

]in/name/d/ , обрабатывая поле «Текущее значение»:

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Содержимое веб-страницы по URL-адресу hxxps://namecha[.

]in/name/d/stat-counter-7 Если получить IP-адрес данным методом не удалось, злоумышленники разрешают доменное имя сервера управления с помощью функции DnsQuery_A, используя специальные DNS-серверы (взятые, например, отсюда ).

Использование функции DnsQuery_A в программном коде библиотеки core.dll выглядит следующим образом:

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Функция получения IP-адресов серверов управления посредством разрешения доменных имен с использованием специальных DNS-серверов.

Функция DnsQuery_A имеет следующий прототип:

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Прототип функции DnsQuery_A, объявленной в заголовочном файле WinDNS.h Четвертый аргумент функции DnsQuery_A — это адрес структуры _IP4_ARRAY в стеке.

Он содержит массив IP-адресов специальных DNS-серверов:

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Структура _IP4_ARRAY в стеке Если функция DnsQuery_A выполнена успешно, IP-адрес сервера управления можно получить, прочитав следующее значение: pDnsRecord -> Data.A.IpAddress. Из декомпилированного кода одного из экземпляров видно, что для разрешения доменного имени C&C используется специальный DNS-сервер 188.165[.

]200.156. А в случае неудачи используется список из трех DNS-серверов: 91.217[.

]137.37, 188.165[.

]200.156, 217.12[.

]210.54.

Тор

15 февраля 2019 года мы впервые обнаружили образцы RTM, управляющий сервер которых расположен в сети Tor ( hxxp://5aaw3unbkm5jqx7d[.

]onion/index[.

]php ).



Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Адрес управляющего сервера в сети Tor среди расшифрованных строк

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Раздел дизассемблированного кода, который анализирует URL-адрес сервера управления и контроля.

Такие образцы рассылались до 9 апреля 2019 года, после чего РТМ вновь перешла на использование доменной зоны .

bit.

Биткойн

10 июня 2019 года мы обнаружили образец RTM, который получает IP-адреса командных серверов из транзакций в определенный криптокошелек.

Каждый IP-адрес скрыт в сумме переданных биткойнов в двух транзакциях.

Для получения IP-адресов C&C вредоносное ПО отправляет запрос на адрес hxxps://chain[.

]so/api/v2/get_tx_received/BTC/ .

Ответ содержит набор транзакций на счет криптокошелька.

Пример показан на скриншоте:

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Давайте посмотрим на участок кода, в котором получаются IP-адреса сервера управления:

Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Функция FindValue ищет дробную часть суммы перевода.

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

То есть последовательные вызовы функции FindValue приведут к значениям 8483, 40030, 14728 и так далее.

Программа генерирует два IP-адреса: каждый адрес скрыт в двух последовательных трансляциях.



Следите за деньгами: как группа РТМ начала прятать адреса C&C-серверов в криптокошельке

Дизассемблированный код получения IP-адреса из сумм перевода на криптокошелек Этот код делает следующее:

   

ip_address = str(value_1 & 0xff) + ".

" + str(value_1 >> 0x8) + ".

" + str(value_0 & 0xff) + ".

" + str(value_0 >> 0x8)

То есть, переведя 0,00008483 BTC, а затем 0,00040030 BTC, злоумышленники скрыли для своей программы IP-адрес 94.156[.

]35.33. Аналогично, из двух предыдущих транзакций RTM получает второй IP-адрес сервера управления.

Именно так вредоносное ПО RTM распространяется и по сей день.



Заключение

Можно отметить, что при организации передачи адреса командного сервера RTM любит использовать подходы, позволяющие динамически менять IP без модификации исходного кода вредоносного ПО.

С одной стороны, это облегчает жизнь злоумышленникам и может ввести аналитиков в заблуждение.

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

Теги: #информационная безопасность #кибербезопасность #биткоин #криптовалюта #bitcoin #обратное проектирование #вредоносное ПО #обратное проектирование #вредоносное ПО #rtm #банковский троян #bi.zone

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.