Киберпреступная группировка РТМ с 2015 года крадет деньги у банковских клиентов.
Большинство ее жертв — российские компании.
Вредоносное ПО, используемое злоумышленниками, в сообществе информационной безопасности также обычно называют RTM. Об этой программе написано довольно много технических отчетов, которые в деталях описывать общий механизм работы вредоносного ПО.
В этой статье мы остановимся на методах получения адресов командных (C&C) серверов РТМ.
В каждой итерации программы злоумышленники изобретательно подходят к этой задаче: распространяют адрес через блоги, используют систему альтернативных DNS-серверов и сеть Tor. На днях мы обнаружили, что RTM начал скрывать IP при транзакциях на биткойн-кошелек.
Что такое РТМ
По своей сути RTM представляет собой банковский троян.Основная цель программы — позволить злоумышленникам манипулировать платежными поручениями компании-жертвы, чтобы незаметно перевести ее средства на счета киберпреступников.
Как правило, RTM доставляется на компьютер жертвы через списки рассылки, реже через взломанные сайты (например, новостные издания) или фейковые ресурсы для бухгалтеров.
К письмам преступники прикрепляют запакованный исполняемый файл.
В качестве средств упаковки злоумышленники используют как собственные разработки, так и самораспаковывающиеся архивы.
Примеры исполняемых файлов с расширением .
exe, распространяемых группой RTM Файлы примеров на рисунке расположены в порядке распространения.
Большую часть времени исполняемые файлы RTM были упакованы специальным упаковщиком и замаскированы под PDF-документ. В начале 2019 года стали появляться первые образцы, представляющие собой самораспаковывающийся архив RAR и замаскированный под файл в формате DOCX. В настоящее время RTM распространяется как самораспаковывающийся CAB-архив.
Бинарное представление файла «Платеж 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/ ):
Содержимое RSS-канала.
Поле описания содержит зашифрованные адреса серверов управления.
Расшифрованные строки с исходным адресом управляющего сервера и адресом RSS-канала.
.
кусочек В марте 2016 года РТМ начала использовать домены зоны .
bit в качестве адресов управляющих серверов.
Их поддерживает альтернативный DNS-регистратор Namecoin, основанный на технологии блокчейн.
Система децентрализована, поэтому домены .
bit сложно заблокировать.
IP-адреса серверов управления на .
bit RTM были получены одним из двух способов:
- через API обозревателя блоков Namecoin;
- посредством разрешения доменных имен с использованием специальных DNS-серверов.
Функция получения IP-адресов серверов управления В функции получения IP-адресов управляющих серверов через API Block Explorer API Namecoin контент, расположенный по адресу hxxps://namecoin.cyphrs[.
]com/api/name_show/d/stat-counter-7
(на примере домена stat-counter-7[.
]bit):
Функция получения IP-адресов управляющих серверов через API Block Explorer API
IP-адреса сервера управления получаются из тела ответа.
Помимо запросов на hxxps://namecoin.cyphrs[.
]com/api/name_show/d/ злоумышленники также использовали запросы на hxxps://namecha[.
]in/name/d/ , обрабатывая поле «Текущее значение»:
Содержимое веб-страницы по URL-адресу hxxps://namecha[.
]in/name/d/stat-counter-7 Если получить IP-адрес данным методом не удалось, злоумышленники разрешают доменное имя сервера управления с помощью функции DnsQuery_A, используя специальные DNS-серверы (взятые, например, отсюда ).
Использование функции DnsQuery_A в программном коде библиотеки core.dll выглядит следующим образом:
Функция получения IP-адресов серверов управления посредством разрешения доменных имен с использованием специальных DNS-серверов.
Функция DnsQuery_A имеет следующий прототип:
Прототип функции DnsQuery_A, объявленной в заголовочном файле WinDNS.h
Четвертый аргумент функции DnsQuery_A — это адрес структуры _IP4_ARRAY в стеке.
Он содержит массив IP-адресов специальных DNS-серверов:
Структура _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
).
Адрес управляющего сервера в сети Tor среди расшифрованных строк
Раздел дизассемблированного кода, который анализирует URL-адрес сервера управления и контроля.
Такие образцы рассылались до 9 апреля 2019 года, после чего РТМ вновь перешла на использование доменной зоны .
bit.
Биткойн
10 июня 2019 года мы обнаружили образец RTM, который получает IP-адреса командных серверов из транзакций в определенный криптокошелек.Каждый IP-адрес скрыт в сумме переданных биткойнов в двух транзакциях.
Для получения IP-адресов C&C вредоносное ПО отправляет запрос на адрес hxxps://chain[.
]so/api/v2/get_tx_received/BTC/ .
Ответ содержит набор транзакций на счет криптокошелька.
Пример показан на скриншоте:
Давайте посмотрим на участок кода, в котором получаются IP-адреса сервера управления:
Функция FindValue ищет дробную часть суммы перевода.
Поиск осуществляется с конца буфера и при каждом последующем вызове функции данные обрабатываются, начиная с текущего индекса.
То есть последовательные вызовы функции FindValue приведут к значениям 8483, 40030, 14728 и так далее.
Программа генерирует два IP-адреса: каждый адрес скрыт в двух последовательных трансляциях.
Дизассемблированный код получения IP-адреса из сумм перевода на криптокошелек
Этот код делает следующее:
То есть, переведя 0,00008483 BTC, а затем 0,00040030 BTC, злоумышленники скрыли для своей программы IP-адрес 94.156[.ip_address = str(value_1 & 0xff) + ".
" + str(value_1 >> 0x8) + ".
" + str(value_0 & 0xff) + ".
" + str(value_0 >> 0x8)
]35.33. Аналогично, из двух предыдущих транзакций RTM получает второй IP-адрес сервера управления.
Именно так вредоносное ПО RTM распространяется и по сей день.
Заключение
Можно отметить, что при организации передачи адреса командного сервера RTM любит использовать подходы, позволяющие динамически менять IP без модификации исходного кода вредоносного ПО.С одной стороны, это облегчает жизнь злоумышленникам и может ввести аналитиков в заблуждение.
С другой стороны, это позволяет специалистам предсказывать адреса управляющих серверов перед проведением вредоносных рассылок.
Теги: #информационная безопасность #кибербезопасность #биткоин #криптовалюта #bitcoin #обратное проектирование #вредоносное ПО #обратное проектирование #вредоносное ПО #rtm #банковский троян #bi.zone
-
Обзор Apple Macbook Air-Mc504Ll/A (Z0Jh)
19 Oct, 24 -
Обзор Ноутбука Sony Vaio Vpc F111Fx/B
19 Oct, 24 -
Ищем Молодую Кровь
19 Oct, 24