Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
С момента появления трояна Rotexy центр реагирования на компьютерные инциденты BI.ZONE заблокировал более 1000 доменных имен, которые злоумышленники использовали в качестве серверов управления. Все это время мы внимательно отслеживали деятельность известного вредоноса для Android. В этой статье (надеемся, что эпитафии) расскажем об активности Rotexy в последние годы и посмотрим, как он устроен.
Rotexy, помесь банкера и вымогателя, появился в 2018 году и провел десятки тысяч атак на пользователей в России. В течение всего 2020 года активность вредоноса постоянно снижалась, но в октябре — ноябре мы снова зафиксировали рост. Вопрос, будет ли некогда один из самых заметных банковских троянов активен вновь, пока остается открытым.
Rotexy распространяется, маскируясь под приложения популярных торговых онлайн‑площадок. Атака начинается вполне обыденно: на телефон потенциальной жертвы приходит СМС, которое приглашает открыть вредоносную ссылку, внешне похожую на адрес той или иной торговой площадки. По ссылке загружается банковский троян. Интересно, что по команде злоумышленников такие фишинговые сообщения распространяют ранее зараженные устройства.
Функции банкера заключаются в том, что Rotexy побуждает жертву ввести данные банковской карты на фишинговой странице. Также трой действует как вымогатель: он может заблокировать экран устройства жертвы по команде с управляющего сервера. В большинстве таких случаев отображается страница с сообщением о том, что для разблокировки экрана необходимо «оплатить штраф» за просмотр контента (например, порнографического).
В последнее время операторы Rotexy крайне избирательно относились к распространению своей вредоносной программы. После перехода пользователя по вредоносной ссылке из СМС злоумышленники проверяли User-Agent его устройства. И только если девайс оказывался мобильным, загружалась вредоносная программа.
Кроме того, управляющие серверы настраиваются таким образом, что за одну рассылку они не позволяют скачивать вредоносные файлы больше 2000 раз. Эти ограничения призваны предотвратить детектирование трояна и блокировку домена.
В течение практически всего года мы наблюдали значительное снижение активности Rotexy. Если в начале 2020-го BI.ZONE-CERT отправил на блокировку почти 50 доменов, зарегистрированных операторами Rotexy, то в сентябре мы обнаружили только один.
При этом в октябре снова начался рост активности — за месяц мы обнаружили 17 доменов, а в ноябре — уже 30.
Количество доменов, отправленных на блокировку в течение 2020 года
Пик числа новых регистраций доменов операторами Rotexy зафиксирован в 2019 году (видно на рисунке ниже), поскольку тогда рассылки были массовыми и наблюдались по всей России. В 2018-м вредонос только появился, причем лишь во второй половине года, однако количество обнаруженных доменов за это время значительно превышает показатель за одиннадцать месяцев 2020-го. Это можно связать с тем, что в последнее время операторы Rotexy стали более избирательно распространять вредоносные APK-файлы и, как правило, в день регистрировали не больше двух доменов.
Количество доменов, отправленных на блокировку в течение трех лет
Свежие семплы вредоносной программы не детектируются антивирусами, поскольку обфусцируются с помощью приватных крипторов.
Отличительная особенность Rotexy — умение обходить антифрод‑системы банков. Программа пополняет баланс мобильного счета с банковской карты жертвы, а затем переводит средства через личный кабинет на другой номер.
Вспомним, какие основные функциональные возможности есть в арсенале Rotexy, на примере файла b848e1cfb58b6e6bdcd44104d04877bd
.
Исходный исполняемый APK-файл Rotexy значительно обфусцирован. Злоумышленники используют три способа обфускации:
Код вредоноса заполнен большим количеством так называемого мертвого кода, который мешает анализу. В большинстве случаев это реализовано следующим образом: в переменную помещается нулевое значение, после чего проверяется, действительно ли переменная равна нулю, и при истинности условия (а такое условие истинно всегда) выполняется переход на определенную метку. Следовательно, часть кода оказывается пропущена.
Пример мертвого кода приведен на рисунке ниже. Код между комментариями «начало мертвого кода» и «конец мертвого кода» никогда не исполнится.
Листинг с примером мертвого кода
Источник: xakep.ru