Linux Новости

Троян NoVoice из Google Play скомпрометировал 2,3 млн Android-устройств и крадет данные WhatsApp

Исследователи McAfee выявили масштабную кампанию распространения трояна NoVoice через Google Play, которая скомпрометировала более 2,3 миллиона Android-устройств. Зловред маскировался под легитимные утилиты и игры, используя стеганографию для скрытия кода внутри PNG-изображений и имитируя компоненты официального SDK Facebook. Главная опасность угрозы заключается в эксплуатации старых уязвимостей ядра Linux и драйверов GPU, исправленных еще в 2016–2021 годах, что позволяет злоумышленникам получать root-права на устаревших устройствах. После получения полного контроля над системой вредонос внедряется в системные библиотеки и устанавливает механизмы персистентности, делающие его неуязвимым даже после сброса настроек до заводских. На текущем этапе зафиксирована кража сессий WhatsApp путем перехвата ключей шифрования и баз данных, однако модульная архитектура зловреда допускает расширение функционала на банковские приложения и соцсети. Несмотря на удаление зараженных приложений из магазина, пользователям неподдерживаемых устройств рекомендуется считать свои данные скомпрометированными, так как стандартное удаление ПО не гарантирует очистки системы от глубоко интегрированного руткита.

Троян NoVoice из Google Play скомпрометировал 2,3 млн Android-устройств и крадет данные WhatsApp

Тихая угроза в магазине приложений: как троян NoVoice скомпрометировал 2,3 миллиона Android-устройств

В экосистеме мобильной безопасности произошел инцидент, который демонстрирует, насколько уязвимыми остаются устройства пользователей, даже если они доверяют официальным каналам распространения ПО. Исследователи компании McAfee обнаружили масштабную кампанию по распространению вредоносного ПО под названием NoVoice. Зловред проник в Google Play Store через более чем 50 легитимных на первый взгляд приложений и был скачан не менее 2,3 миллиона раз. Это событие стало тревожным сигналом для всей индустрии, так как атака использовала не новые «нулевые дни», а старые, давно известные уязвимости, которые должны были быть закрыты годами назад.

Особенность кампании NoVoice заключается в её изощрённости и способности обходить стандартные механизмы защиты. Вредоносное ПО маскировалось внутри популярных категорий приложений: чистильщиков системы, галерей изображений и игр. Эти приложения выполняли заявленные функции, не запрашивали подозрительных разрешений и проходили проверку алгоритмов магазина. Однако за фасадом полезного функционала скрывался сложный механизм, способный получить полные права суперпользователя (root) на устройстве жертвы, полностью обойдя модель безопасности Android.

Архитектура скрытности: стеганография и маскировка под Facebook SDK

Разработчики NoVoice продемонстрировали высокий уровень технической подготовки, используя продвинутые методы сокрытия кода. Вместо того чтобы упаковывать вредоносный APK-файл в архив или использовать стандартные методы шифрования, злоумышленники применили стеганографию — технику скрытия данных внутри других файлов. Основной полезный груз был зашифрован и спрятан внутри обычного изображения формата PNG, которое присутствовало в пакете приложения.

После запуска зараженного приложения происходит цепочка событий, направленная на устранение следов и активацию зловреда:

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

Дополнительным слоем маскировки стала имитация легитимного программного обеспечения. Исследователи обнаружили, что вредоносные компоненты были размещены внутри пакета с именем com.facebook.utils, смешиваясь с классами официального SDK от Facebook. Такая техника позволяет обойти эвристический анализ, так как сигнатуры легального кода Facebook широко распространены и считаются безопасными. Это создает иллюзию нормального поведения приложения, пока не начнется процесс эксплуатации уязвимостей.

Авторы NoVoice также внедрили сложную систему проверки окружения перед запуском атаки. В коде реализовано 15 различных проверок для выявления эмуляторов, отладчиков и VPN-сервисов. Если устройство находится в подозрительном окружении, атака блокируется. Кроме того, наблюдается географическая фильтрация: зловред специально избегает заражения устройств в определенных регионах Китая, таких как Пекин и Шэньчжэнь. Если разрешение на геолокацию недоступно, цепочка заражения продолжается, что говорит о попытке минимизировать риски обнаружения в зонах с высокой концентрацией исследователей кибербезопасности.

Эксплуатация старых дыр: путь к получению root-прав

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

Здесь кроется главная проблема: NoVoice эксплуатирует уязвимости, исправленные в обновлениях безопасности между 2016 и 2021 годами. Исследователи идентифицировали 22 различные эксплойта, используемые в рамках этой кампании. Среди них:

  • Уязвимости типа use-after-free в ядре Linux, лежащем в основе Android.
  • Дефекты драйверов графических процессоров Mali GPU.
  • Проблемы в обработке памяти и системных вызовах.

Использование старых уязвимостей указывает на то, что цель атаки — массовое заражение устаревших устройств, владельцы которых перестали получать обновления безопасности. Получив root-доступ, злоумышленники получают возможность отключить принудительное выполнение SELinux (Security-Enhanced Linux) — фундаментальный механизм изоляции процессов в Android. Отключение SELinux фактически снимает основные барьеры безопасности, позволяя вредоносному ПО выполнять любые действия в системе.

После получения полного контроля архитектура атаки переходит к фазе внедрения в системные библиотеки. Ключевые библиотеки, такие как libandroid_runtime.so и libmedia_jni.so, заменяются на модифицированные версии с внедренными хуками (hooked wrappers). Эти хуки перехватывают системные вызовы и перенаправляют выполнение кода на вредоносные модули. Это позволяет зловреду действовать незаметно, интегрируясь в саму ткань операционной системы.

Механизмы персистентности: почему сброс настроек не помогает

Одной из самых опасных характеристик NoVoice является его способность выживать даже после агрессивных попыток очистки устройства. Традиционный метод борьбы с вирусами на Android — сброс до заводских настроек (factory reset) — в данном случае оказывается неэффективным. Злоумышленники предусмотрели это, внедрив механизмы персистентности (сохранения присутствия) в защищенные разделы памяти.

Rootkit устанавливает несколько слоев устойчивости:

  • Установка скриптов восстановления (recovery scripts), которые активируются при загрузке системы.
  • Замена системного обработчика аварийных остановов (crash handler) на загрузчик rootkit-а.
  • Хранение резервных копий полезной нагрузки в системном разделе, который обычно не очищается при стандартном сбросе настроек.

Кроме того, в системе запускается демон-наблюдатель (watchdog daemon), который каждые 60 секунд проверяет целостность компонентов rootkit-а. Если какой-то модуль был удален или поврежден, демон автоматически переустанавливает недостающие части. В случае критической ошибки проверки система принудительно перезагружается, что приводит к повторной загрузке rootkit-а через модифицированный обработчик ошибок. Эта схема создает замкнутый цикл, практически невозможный для разрыва без физического вмешательства или полной перепрошивки устройства через специализированные инструменты.

Целевая атака на WhatsApp и кража сессий

После закрепления в системе начинается фаза пост-эксплуатации. Код, контролируемый злоумышленниками, внедряется в каждое приложение, запускаемое на устройстве. Архитектура NoVoice модульная, что теоретически позволяет подключать различные полезные нагрузки для атаки на разные сервисы. Однако на данный момент исследователи подтвердили наличие компонента, нацеленного исключительно на мессенджер WhatsApp.

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

  • Шифрованные базы данных сообщений.
  • Ключи протокола Signal, обеспечивающего сквозное шифрование.
  • Идентификаторы аккаунта, включая номер телефона.
  • Детали резервных копий в Google Drive.

Полученная информация немедленно отправляется на C2-сервер. С помощью этих данных злоумышленники могут клонировать сессию жертвы на собственном устройстве. Это означает, что атакующий получает полный доступ к перепискам, медиафайлам и истории звонков, причем все сообщения будут отображаться и на телефоне жертвы, и на устройстве хакера одновременно. Жертва может даже не заметить компрометации, так как интерфейс WhatsApp будет работать нормально, но весь трафик будет дублироваться.

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

Реакция Google и практические выводы для пользователей

После того как McAfee, являющаяся членом Альянса по защите приложений (App Defense Alliance), сообщила Google о выявленных угрозах, все 50+ приложений, содержащих NoVoice, были удалены из Google Play Store. Представитель Google заявил, что устройства, обновленные после мая 2021 года, защищены от этой угрозы, поскольку соответствующие уязвимости были исправлены много лет назад. Кроме того, сервис Google Play Protect автоматически удаляет эти приложения и блокирует их повторную установку.

Однако ситуация остается серьезной для миллионов пользователей, чьи устройства не получили своевременных обновлений. Факт того, что 2,3 миллиона человек скачали эти приложения, означает, что огромное количество устройств уже скомпрометировано. Для тех, кто установил одно из зараженных приложений в прошлом, рекомендуется считать свои данные и устройство полностью скомпрометированными. Простое удаление приложения может быть недостаточно из-за механизмов персистентности, описанных выше.

Этот инцидент подчеркивает важность регулярного обновления операционной системы и установки последних патчей безопасности. Устройства, поддержка которых прекращена производителем, становятся легкой мишенью для подобных атак. Также стоит помнить, что наличие приложения в официальном магазине Google Play не является абсолютной гарантией безопасности. Злоумышленники постоянно совершенствуют методы обхода модерации, используя легитимные SDK и сложные техники маскировки.

Для предприятий и организаций, использующих корпоративные Android-устройства, этот случай служит напоминанием о необходимости строгой политики управления мобильными устройствами (MDM) и обязательного использования только поддерживаемых моделей. В контексте развития отечественного программного обеспечения и инфраструктуры, подобные угрозы актуальны и для российских пользователей. Например, использование сертифицированных решений, таких как российский Linux-дистрибутив НАЙС.ОС, который включен в реестр отечественного ПО, может стать частью стратегии построения защищенной IT-инфраструктуры, особенно в сегменте серверов и рабочих станций, где контроль над обновлениями и безопасность имеют первостепенное значение.

Заключение: уроки для экосистемы Android

Кампания NoVoice демонстрирует, что угроза исходит не столько от новых технологических прорывов хакеров, сколько от пренебрежения базовой гигиеной цифровой безопасности. Использование уязвимостей пятилетней давности позволило создать одну из самых масштабных атак на Android за последнее время. Это ставит под сомнение эффективность модели обновлений многих производителей смартфонов, которые часто задерживают выпуск патчей безопасности или вовсе прекращают поддержку устройств спустя короткое время после выхода.

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

Комментарии