Rotexy. Как действовал один из опаснейших троянов 2020 года

Dublikat Tenec Web Studio Avram Lincoln AL Service Navigator BDF Knyaz

battarismos

PR-Group DeepWeb 🔷
Регистрация
06.12.2020
Сообщения
38
С момента появления трояна Rotexy центр реагирования на компьютерные инциденты BI.ZONE заблокировал более 1000 доменных имен, которые злоумышленники использовали в качестве серверов управления. Все это время мы внимательно отслеживали деятельность известного вредоноса для Android. В этой статье (надеемся, что эпитафии) расскажем об активности Rotexy в последние годы и посмотрим, как он устроен.

Rotexy, помесь банкера и вымогателя, появился в 2018 году и провел десятки тысяч атак на пользователей в России. В течение всего 2020 года активность вредоноса постоянно снижалась, но в октябре — ноябре мы снова зафиксировали рост. Вопрос, будет ли некогда один из самых заметных банковских троянов активен вновь, пока остается открытым.

КАК ПРОХОДИТ АТАКА​

Rotexy распространяется, маскируясь под приложения популярных торговых онлайн‑площадок. Атака начинается вполне обыденно: на телефон потенциальной жертвы приходит СМС, которое приглашает открыть вредоносную ссылку, внешне похожую на адрес той или иной торговой площадки. По ссылке загружается банковский троян. Интересно, что по команде злоумышленников такие фишинговые сообщения распространяют ранее зараженные устройства.

Функции банкера заключаются в том, что Rotexy побуждает жертву ввести данные банковской карты на фишинговой странице. Также трой действует как вымогатель: он может заблокировать экран устройства жертвы по команде с управляющего сервера. В большинстве таких случаев отображается страница с сообщением о том, что для разблокировки экрана необходимо «оплатить штраф» за просмотр контента (например, порнографического).

РАСПРОСТРАНЕНИЕ​

В последнее время операторы Rotexy крайне избирательно относились к распространению своей вредоносной программы. После перехода пользователя по вредоносной ссылке из СМС злоумышленники проверяли User-Agent его устройства. И только если девайс оказывался мобильным, загружалась вредоносная программа.

Кроме того, управляющие серверы настраиваются таким образом, что за одну рассылку они не позволяют скачивать вредоносные файлы больше 2000 раз. Эти ограничения призваны предотвратить детектирование трояна и блокировку домена.

СТАТИСТИКА АКТИВНОСТИ​

В течение практически всего года мы наблюдали значительное снижение активности Rotexy. Если в начале 2020-го BI.ZONE-CERT отправил на блокировку почти 50 доменов, зарегистрированных операторами Rotexy, то в сентябре мы обнаружили только один.

При этом в октябре снова начался рост активности — за месяц мы обнаружили 17 доменов, а в ноябре — уже 30.

6aBuyaOpxrY.jpg

Количество доменов, отправленных на блокировку в течение 2020 года
Пик числа новых регистраций доменов операторами Rotexy зафиксирован в 2019 году (видно на рисунке ниже), поскольку тогда рассылки были массовыми и наблюдались по всей России. В 2018-м вредонос только появился, причем лишь во второй половине года, однако количество обнаруженных доменов за это время значительно превышает показатель за одиннадцать месяцев 2020-го. Это можно связать с тем, что в последнее время операторы Rotexy стали более избирательно распространять вредоносные APK-файлы и, как правило, в день регистрировали не больше двух доменов.

7vo6c8vQrOE.jpg

Количество доменов, отправленных на блокировку в течение трех лет

ДЕТЕКТИРОВАНИЕ​

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

Отличительная особенность Rotexy — умение обходить антифрод‑системы банков. Программа пополняет баланс мобильного счета с банковской карты жертвы, а затем переводит средства через личный кабинет на другой номер.

ОСНОВНАЯ ФУНКЦИОНАЛЬНОСТЬ​

Вспомним, какие основные функциональные возможности есть в арсенале Rotexy, на примере файла b848e1cfb58b6e6bdcd44104d04877bd.

Исходный исполняемый APK-файл Rotexy значительно обфусцирован. Злоумышленники используют три способа обфускации:

  • мертвый код;
  • прокси‑методы;
  • шифрование строк.

Мертвый код​

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

Пример мертвого кода приведен на рисунке ниже. Код между комментариями «начало мертвого кода» и «конец мертвого кода» никогда не исполнится.

b3CNu8I_kiU.jpg

Листинг с примером мертвого кода

Прокси-методы​

«Прокси‑методами» мы назвали методы, которые последовательно вызывают друг друга по цепочке, пока не будет достигнут целевой метод. Пример использования прокси‑метода приведен на рисунке ниже: при срабатывании onTick() будет по очереди вызвано девять методов и лишь десятым — тот, который произведет нужное действие.

wuKMRuaj5EM.jpg

Последовательность вызовов до достижения целевого метода

Шифрование строк​

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

yH6-GUDvKj0.jpg

Пример зашифрованной строки

РАБОТА ВРЕДОНОСНОЙ ПРОГРАММЫ​

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

Данные о себе, своих действиях, а также о зараженном устройстве Rotexy хранит в локальной базе данных SQLite.

Запуск​

После запуска Rotexy запрашивает привилегии, которые позволяют трояну выполнять вредоносные действия на зараженном устройстве.

Вредоносная программа запрашивает права администратора и использование службы специальных возможностей, с их помощью можно получить остальные права. Ей необходимы привилегии, обеспечивающие автозапуск вредоносного приложения после перезагрузки устройства, чтобы оно функционировало непрерывно. Также Rotexy требуются привилегии, предоставляющие возможности работы с Google Cloud Messaging и СМС, которые используются для взаимодействия с управляющим сервером. Кроме того, вредоносной программе необходим доступ к списку контактов, а также возможность управлять подключением к сети Wi-Fi и изменять состояние сетевого подключения, для чего также нужны отдельные права. Важная привилегия — возможность создать окно, которое отображается поверх других приложений, поскольку за счет этого реализована основная вредоносная функциональность.

При старте Rotexy проверяет, в какой стране запускается. Активность вредоносное приложение проявляет лишь в России.

Сервисы​

В фоновом режиме могут запускаться некоторые сервисы. Сервис запуска банкера, вымогателя или обновления показывает пользователю HTML-страницу, полученную с управляющего сервера и соответствующую банкеру, вымогателю или странице обновления (если сервер управления включает данные режимы). Вредоносное приложение имеет сразу три возможных источника получения команд от управляющего сервера: Google Cloud Messaging, HTTP-запросы и СМС. Соответственно, вредоносным приложением могут быть запущены сервис Google Cloud Messaging (GCM), сервис обработки интернет‑команд и сервис обработки СМС, которые и будут отвечать за взаимодействие с сервером управления.

Взаимодействие с сервером управления​

Как уже упоминалось, взаимодействие с сервером управления возможно с помощью HTTP-запросов, СМС и сервиса GCM.

После запуска троян отсылает на управляющий сервер информацию о текущем состоянии устройства, включающая SID, IMEI, наличие административных привилегий, статус блокирования экрана, статус «иммунитета», тип сети, к которой подключен смартфон, состояние экрана (включен или нет), статус доступа к службе специальных возможностей, статус наличия привилегий СМС‑приложения. На сервер управления также может отправляться список запущенных процессов и список установленных приложений.

Данные передаются в виде зашифрованного JSON. Сначала они кодируются в формат Base64, после чего зашифровываются с помощью алгоритма AES-256 в режиме CBC с дополнением блока нулями и далее преобразуются в шестнадцатеричное представление. IP-адрес управляющего сервера, ключ шифрования, вектор инициализации, а также идентификатор для GCM хранятся в конфигурации приложения. Часть конфигурации для примера приведена на рисунке ниже.

ojYILvYyEkg.jpg

Конфигурация Rotexy
При каждом запросе к управляющему серверу генерируется новый URL вида hxxp://213[.]166[.]68[.]138/repeater/getaway<случайное число от 1 до 10000>. Вероятно, злоумышленники используют такой подход для предотвращения повторного использования запросов исследователями.

Генерирующий URL код приведен на рисунке ниже.

jRZ6dEbkLe8.jpg

Код, генерирующий URL управляющего сервера
На рисунке ниже — блок кода, иллюстрирующий формирование JSON для отправки данных на управляющий сервер.

9WmwTzqGwDA.jpg

Формирование JSON с данными о зараженном устройстве
Обращение за новыми командами Rotexy выполняет по команде от ботоводов.

По команде с управляющего сервера вредонос может сохранить HTML-шаблон для дальнейшего использования в функциях банкера или вымогателя и данные для его заполнения. Также он может включить или выключить отображение сформированных HTML-страниц. Rotexy разошлет СМС по списку контактов, получив соответствующую команду. Если была получена дополнительная команда, вредонос способен управлять использованием GCM, обновить адрес сервера управления, отправить СМС, отозвать права администратора, отправить список контактов на управляющий сервер, включить режимы банкера, вымогателя или обновления, а также завершить их работу.

Rotexy может перехватывать все входящие СМС и обрабатывать их в соответствии со своими шаблонами. Приложение взаимодействует с управляющим сервером по протоколу HTTP или GCM, а также получает команды при помощи СМС. Через СМС Rotexy может получать следующие команды:

  • отозвать права администратора;
  • управлять подключением к интернету через мобильную сеть или Wi-Fi;
  • отправить СМС;
  • сменить адрес сервера управления.
Интересно, что с помощью полученной по СМС команды может быть отключена блокировка экрана.

ЗАКЛЮЧЕНИЕ​

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

И хотя операторы Rotexy уже давно перестали использовать массовые рассылки для распространения своей вредоносной программы, стоит внимательнее относиться к полученным сообщениям.
 

📌 Золотая реклама

AnonPaste

Верх