Специалисты по мобильной безопасности продолжают фиксировать рост сложности и масштаба угроз для операционной системы Android. Последним тревожным сигналом стало обнаружение исследователями из McAfee масштабной кампании, получившей название Operation Novoice. Её особенность заключается не в использовании принципиально новых эксплойтов, а в создании высокоадаптивного и устойчивого вредоносного фреймворка, который распространялся через официальный магазин Google Play и мог приводить к полному компрометированию устройства. Атака нацелена в первую очередь на владельцев устаревших смартфонов, но представляет угрозу для всех пользователей из-за сложности обнаружения и удаления зловреда.
Описание
Кампания NoVoice демонстрирует эволюцию мобильных угроз в сторону сложных модульных систем. Вместо единого монолитного вредоносного приложения злоумышленники создали цепочку взаимосвязанных компонентов, которые последовательно загружаются и активируются. Исходной точкой стали более 50 приложений в Google Play, маскирующихся под полезные утилиты: очистители памяти, галереи изображений или простые игры. Эти приложения не запрашивали подозрительных разрешений и внешне вели себя как обычный софт, что не вызывало подозрений у пользователей. Общее количество загрузок таких программ превысило 2,3 миллиона.
Механизм атаки начинал работу сразу после запуска заражённого приложения. В фоновом режиме оно связывалось с командным сервером злоумышленников (C2, Command and Control), передавало ему детальную информацию об устройстве - модель, версию ядра, уровень обновлений безопасности. В ответ сервер подбирал и отправлял на устройство набор эксплойтов для получения привилегий суперпользователя (root-доступа), идеально соответствующий конкретному железу и программному обеспечению жертвы. Исследователи обнаружили в своей аналитике 22 различных эксплойта, использующих уязвимости в ядре Android и драйверах, для которых исправления были выпущены ещё в период с 2016 по 2021 год. Это означает, что устройства с уровнем обновлений безопасности от мая 2021 года и новее не уязвимы к данным конкретным эксплойтам. Однако на более старых или неподдерживаемых аппаратах, особенно под управлением Android 7 и ниже, атака была успешной.
Главная опасность NoVoice заключается в достижении так называемого persistence - способности вредоносного кода сохраняться в системе после перезагрузки и даже сброса к заводским настройкам. После получения root-доступа фреймворк заменяет критически важную системную библиотеку "libandroid_runtime.so" на свою модифицированную версию. Поскольку эта библиотека загружается процессом Zygote, который порождает все приложения в Android, подменённый код начинает выполняться внутри каждого запускаемого пользователем приложения. Это предоставляет операторам кампании беспрецедентный уровень контроля. Они получают возможность внедрять произвольный вредоносный код в runtime любого приложения, перехватывать данные и передавать их на свои серверы.
На практике это привело к созданию модуля, специально нацеленного на клонирование сессий мессенджера WhatsApp. Полезная нагрузка с именем PtfLibc активировалась при запуске WhatsApp, извлекала из защищённого хранилища ключи шифрования Signal-протокола, регистрационные данные, номер телефона и другую конфиденциальную информацию, после чего отправляла всё на серверы злоумышленников. Обладая этими данными, атакующие могли полностью воссоздать сессию жертвы на другом устройстве, получая доступ ко всей истории переписки и продолжая общение от её имени. При этом фреймворк спроектирован как платформа для доставки любых вредоносных модулей, и кражей данных WhatsApp его возможности не ограничиваются.
География распространения инфекции указывает на целевой характер кампании. Наибольшее число заражений было зафиксировано в Нигерии, Эфиопии, Алжире, Индии и Кении - регионах, где широко распространены бюджетные смартфоны и устройства с устаревшими, неподдерживаемыми версиями Android. Инфраструктура злоумышленников, включающая несколько доменов и использование облачных хранилищ вроде Alibaba Cloud OSS, оставалась активной на момент публикации отчёта. Для маскировки трафика использовались домены, имитирующие легитимные сервисы, например "api[.]googlserves[.]com".
Особую сложность представляет процедура очистки заражённого устройства. Поскольку руткит вносит изменения непосредственно в системный раздел, обычный сброс к заводским настройкам неэффективен - он очищает только пользовательские данные, оставляя модифицированные системные библиотеки нетронутыми. Единственным надёжным способом восстановления является полная перепрошивка устройства с использованием чистой официальной прошивки. После получения отчёта от McAfee Google удалила все выявленные вредоносные приложения из магазина Play и заблокировала связанные с ними аккаунты разработчиков.
Обнаружение кампании NoVoice вновь поднимает вопрос о безопасности цепочки поставок мобильного ПО и эффективности автоматических проверок в официальных магазинах приложений. Злоумышленники продемонстрировали высокий уровень инженерии, создав самоадаптирующуюся и самовосстанавливающуюся систему, способную долгое время оставаться незамеченной. Для пользователей это служит напоминанием о необходимости регулярно обновлять операционную систему и приложения, а также с осторожностью относиться к малознакомым программам, даже полученным из официальных источников. Для бизнеса, чьи сотрудники используют Android-устройства для работы, инцидент подчёркивает важность внедрения решений класса EMM (Enterprise Mobility Management) для контроля установленного ПО и мониторинга аномальной активности.