Joker: что это за вредонос и как защититься

Joker — не шутка: это семейство мобильного вредоносного ПО, которое систематически возрождается и адаптируется, чтобы обходить защиту Google Play. Вредонос скрывается в легитимно выглядящих приложениях, оформляет платные подписки за счёт пользователя, ворует SMS, доступ к контактам и может вмешиваться в систему уведомлений.
Что такое Joker?
Joker (иногда упоминается как Bread в отдельных исследованиях) — это троян для Android, цель которого — незаметно подписать пользователя на платные сервисы и собирать приватные данные. Первые атаки зафиксированы Google в 2017 году; с тех пор злоумышленники регулярно меняют технику доставки и маскировки, чтобы обходить фильтры магазина приложений.
Коротко о терминах:
- DEX — формат исполняемого кода для Android-приложений.
- Notification Listener — API Android, дающее приложению доступ к уведомлениям устройства.
Важно: Joker часто публиковался как «чистая» версия приложения, а затем получал вредоносный код через обновления или загружал его динамически уже на устройстве жертвы.
Изображение: Mika Baumeister / Unsplash
Как работает Joker — подробный разбор
Joker использует комбинацию техник, чтобы остаться незаметным и реализовать мошеннические схемы:
Маскировка в Play Store
- Загрузка «чистой» версии приложения с отсутствием явного вредоносного кода.
- Фейковые отзывы и рейтинги, чтобы выглядеть заслуживающим доверия.
Динамическая загрузка вредоносного кода
- Более новые варианты прячут вредоносный DEX-файл в теле приложения как Base64-строки.
- При установке приложение декодирует и загружает DEX в рантайме — на момент проверки в магазине вредоносной сигнатуры нет.
Подписки и SMS-фрод
- Ранние варианты отправляли SMS на премиальные номера с устройства жертвы, оформляя платные подписки через SMS.
- Последующие варианты используют доступ к уведомлениям (Notification Listener), чтобы блокировать подтверждения подписок и скрывать оповещения о транзакциях.
Кража данных
- Joker запрашивает разрешения на чтение SMS, доступ к контактам и информации об устройстве, чтобы собирать данные и усиливать мошенничество.
Исследование Check Point показало, что новые варианты переходят от открытой отправки SMS к более тонкой схеме: вредоносный код хранится внутри приложения и загружается уже на устройстве, что затрудняет автоматическое обнаружение.
Технические индикаторы компрометации (IoC)
- Необычные списания на мобильном или банковском счёте, связанные с ежемесячными платежами.
- Подписки, о которых вы не давали согласия.
- Приложения с правами на чтение SMS, Call Log или доступом к уведомлениям, если приложение не требует их по логике работы.
- Дублирующиеся или шаблонные отзывы в Google Play.
- Повышенный сетевой трафик приложения без видимой причины.
Список приложений, удалённых Google за наличие Joker
Google недавно удалил 11 приложений, содержащих Joker. Если вы используете одно из них — удалите его и проверьте счёт:
- Compress Image (com.imagecompress.android)
- Contact Message (com.contact.withme.texts)
- Friend SMS (com.hmvoice.friendsms)
- Relaxation Message (com.relax.relaxation.androidsms)
- Cheery Message (com.cheery.message.sendsms)
- Cheery Message — второй пакет (com.cheery.message.sendsms)
- Loving Message (com.peason.lovinglovemessage)
- File Recovery (com.file.recovefiles)
- App Locker (com.LPlocker.lockapps)
- Remind Alarm (com.remindme.alram)
- Memory Game (com.training.memorygame)
Примечание: в списке встречаются приложения самых разных категорий — от мессенджеров и утилит до игр и обоев. Маскировка делает их внешне безобидными.
Изображение: Check Point Research — https://research.checkpoint.com/2020/new-joker-variant-hits-google-play-with-an-old-trick/
Как обнаружить, что вы стали жертвой Joker
Проверьте устройство и счета по следующему чек-листу:
- Отсутствуют ли неожиданные списания или подписки на мобильном/банковском счёте?
- Есть ли приложения с правами на SMS, контакты или уведомления, которые вы не устанавливали сознательно?
- Появились ли спам-SMS с кодами подтверждения или необычные SMS на номера, которые вы не знаете?
- Наблюдается ли аномальный расход трафика или ускоренная разрядка батареи?
- Совпадают ли идентификаторы пакета (package name) устаревшей/заражённой версии с теми, что упомянуты в списках угроз?
Если на один из вопросов ответ «да», нужно действовать быстро.
Шаги по удалению Joker с устройства (пошаговая инструкция)
- Отключите интернет (Wi‑Fi и мобильные данные) — это предотвратит дальнейшую загрузку кода и сетевые вызовы.
- Войдите в Настройки → Приложения и найдите подозрительное приложение по названию или идентификатору пакета.
- Удалите приложение: «Удалить» / «Деинсталляция». Если кнопка неактивна — снимите права администратора устройства (Настройки → Безопасность → Администраторы устройства).
- Отревокируйте права доступа: Отмените доступ к SMS, контактам, уведомлениям у всех непроверенных приложений.
- Сбросьте пароли и включите двухфакторную аутентификацию для критичных сервисов (почта, банковские приложения).
- Проверьте транзакции на банковских картах и мобильном счёте. Свяжитесь с оператором и банком для оспаривания несанкционированных списаний.
- Просканируйте устройство антивирусом для Android от авторитетного вендора и удалите обнаруженные угрозы.
- При подозрении на утечку данных уведомите контакты, если ваш список контактов мог быть экспортирован злоумышленниками.
Инцидентный план (Runbook) для домашних и корпоративных пользователей
- Немедленные действия (0–1 час): отключить сеть, удалить приложение, снять права администратора, собрать логи (при возможности).
- Среднесрочные (1–24 часа): сменить пароли, заблокировать карты, связаться с оператором мобильной связи, уведомить ответственного по безопасности.
- Долгосрочные (1–7 дней): полная проверка устройств в окружении (BYOD), ревизия списка установленных приложений, обновление политик мобильной безопасности.
Критерии приёмки (после удаления):
- Приложение удалено и не перезагружается автоматически.
- Не наблюдается повторных сетевых запросов к известным C2 (командно‑управляющим) доменам.
- Не зафиксированы новые неавторизованные списания в течение 30 дней.
Ролевые чек‑листы
Пользователь — быстрые шаги:
- Удалить незнакомое приложение.
- Проверить и оспорить списания в банке/операторе.
- Сменить пароли и включить 2FA.
ИТ/администратор мобильной безопасности:
- Просканировать MDM/EMM на предмет установленных пакетов.
- Заблокировать идентификаторы известных пакетов в белом/чёрном списке.
- Проинформировать сотрудников и запустить проверку устройств.
Операторы магазинов приложений / модерация:
- Повторно проверять обновления на наличие декодируемых Base64-ресурсов с исполняемым кодом.
- Усилить проверки для приложений с необычными запросами на доступ к SMS и уведомлениям.
Модель принятия решения при установке приложения (Mermaid)
flowchart TD
A[Хочу установить приложение] --> B{Есть ли критические разрешения?}
B -- Да --> C[Проверить описание: нужны ли разрешения по логике работы]
B -- Нет --> D[Проверить отзывы и разработчика]
C --> E{Разрешения соответствуют функционалу?}
E -- Да --> D
E -- Нет --> F[Отказаться от установки]
D --> G{Есть ли дублированные/шаблонные отзывы?}
G -- Да --> F
G -- Нет --> H[Установить и следить за поведением]
H --> I{Появились странные списания?}
I -- Да --> J[Удалить, сканировать, оспорить платежи]
I -- Нет --> K[Оставить, но периодически проверять]Как предотвращать заражение — методология проверки приложений
- Источник: скачивайте приложения только из доверенных магазинов и с сайтов разработчика.
- Разрешения: сомневаетесь — не давайте доступ к SMS, контактам и уведомлениям без крайней необходимости.
- Отзывы: проверяйте дату отзывов, повторяющиеся тексты, имена и профили рецензентов.
- Сетевые права: следите за приложениями, которые без причины инициируют исходящие соединения.
- Резервные копии: регулярно делайте бэкапы, чтобы при необходимости быстро восстановить данные.
Когда защита может не сработать — типичные слабые места
- Установка APK из сторонних источников — высокая вероятность заражения.
- Использование устаревших версий Android с известными уязвимостями.
- Предоставление приложению прав администратора устройства без проверки.
Безопасность и конфиденциальность — дополнительные рекомендации
- Отключите автоматическое предоставление обновлений для приложений из непроверенных источников.
- Разрешайте доступ к SMS только для приложений, которые прямо обосновывают это в функционале (например, мессенджеры).
- При выборе антивируса обращайте внимание на независимые тесты и репутацию вендора.
Юридическая и приватная сторона (коротко): если данные контактов или SMS утекли, в странах с регулированием персональных данных следует уведомить пострадавших и, при необходимости, регуляторы — в зависимости от объёма и характера утечки.
Тесты и критерии приёмки для проверки устройства после инцидента
- Устройство должно пройти полное сканирование антивирусом без обнаружения активных угроз.
- Нет новых неизвестных подписок или списаний в течение 30 дней.
- Никакие приложения не запрашивают SMS/Call Log/Notification Listener без явной необходимости.
Сравнение подходов к защите — кратко
- Механика: отказ от подозрительных разрешений > проверка источников > использование MDM/EMM в корпоративной среде.
- Эффект: комбинированный подход (поведенческий анализ + репутация приложений + политические ограничения) даёт наибольшую устойчивость.
Короткая терминология (глоссарий)
- DEX — исполняемый байт‑код Android.
- Notification Listener — API для чтения уведомлений на Android.
- C2 (command-and-control) — серверы управления, к которым подключается вредонос.
Заключение
Joker — адаптивная угроза для Android: она маскируется, динамически загружает код и перехватывает уведомления, чтобы оформлять платные подписки и красть данные. Защита сводится к простым, но дисциплинированным шагам: проверяйте разрешения, читайте отзывы критически, используйте антивирус и ограничивайте установку приложений из непроверенных источников. Если вы обнаружили заражение — действуйте быстро: отключите сеть, удалите приложение, поменяйте пароли и свяжитесь с банком или оператором.
Ключевые действия сейчас: проверьте список установленных приложений, удалите подозрительные, пересмотрите списания и включите двухфакторную аутентификацию.
Изображения и материалы частично основаны на расследовании Check Point Research: https://research.checkpoint.com/2020/new-joker-variant-hits-google-play-with-an-old-trick/
Похожие материалы
Установка и настройка NordVPN на ПК и мобильных
Добавить выпадающий список в Google Таблицы
Подключить Nest Thermostat к Apple Home через Matter
Сброс Google Nest Hub до заводских настроек
Power Nap на Mac — что это и как включить