В тревожном развитии событий для мобильной безопасности, измененные версии известных Android-приложений, связанных с популярными платформами, такими как Spotify, WhatsApp и Minecraft, были идентифицированы как носители новой итерации печально известного загрузчика вредоносного ПО Necro. Kaspersky сообщил, что некоторые из этих вредоносных приложений были доступны в Google Play Store, собрав ошеломляющие 11 миллионов загрузок в совокупности.
Wuta Camera – Nice Shot Always (com.benqu.wuta) – 10+ миллионов загрузок
Max Browser – Private & Security (com.max.browser) – 1+ миллион загрузок
На данный момент Max Browser был удален из Play Store, в то время как Wuta Camera прошла обновление (версия 6.3.7.138), направленное на устранение вредоносного ПО. Последняя версия, 6.3.8.148, была выпущена 8 сентября 2024 года.
Методы компрометации и распространения
Точный метод, по которому эти приложения были скомпрометированы, остается неясным, хотя подозревается, что виновником может быть вредоносный набор инструментов разработки программного обеспечения (SDK), предназначенный для интеграции рекламных возможностей. Necro, который не следует путать с одноименной ботнет-сетью, впервые был обнаружен Kaspersky в 2019 году, скрытым в широко используемом приложении для сканирования документов под названием CamScanner. Разработчики CamScanner приписали проблему рекламному SDK от стороннего поставщика AdHub, который содержал вредоносный модуль, способный загружать последующее вредоносное ПО с удаленного сервера, эффективно действуя как загрузчик.
Последняя версия Necro продолжает эту тенденцию, используя передовые методы обфускации для уклонения от обнаружения, особенно через использование стеганографии для скрытия своих полезных нагрузок. По словам исследователя Kaspersky Дмитрия Калинина, «Загруженные полезные нагрузки, среди прочего, могут отображать рекламу в невидимых окнах и взаимодействовать с ними, загружать и выполнять произвольные DEX-файлы, устанавливать приложения, которые они загрузили». Более того, он может «открывать произвольные ссылки в невидимых окнах WebView и выполнять любой JavaScript-код в них, запускать туннель через устройство жертвы и потенциально подписывать на платные услуги».
Модули и плагины Necro
Одним из основных методов распространения Necro является использование модифицированных версий популярных приложений и игр, найденных на неофициальных веб-сайтах и магазинах приложений. После установки эти приложения инициализируют модуль под названием Coral SDK, который отправляет HTTP POST-запрос на удаленный сервер. Сервер затем отвечает ссылкой на предполагаемый файл PNG, размещенный на adoss.spinsok[.]com, из которого SDK извлекает основную полезную нагрузку — закодированный в Base64 Java-архив (JAR) файл.
Вредоносные возможности Necro реализуются через серию дополнительных модулей или плагинов, загружаемых с командного и управляющего (C2) сервера, что позволяет выполнять широкий спектр действий на скомпрометированном Android-устройстве:
- NProxy: Создает туннель через устройство жертвы.
- island: Генерирует псевдослучайное число для определения интервала между навязчивыми показами рекламы.
- web: Периодически связывается с C2 сервером и выполняет произвольный код с повышенными привилегиями при загрузке определенных ссылок.
- Cube SDK: Вспомогательный модуль, который загружает другие плагины для управления рекламой в фоновом режиме.
- Tap: Загружает произвольный JavaScript-код и интерфейс WebView с C2 сервера для скрытой загрузки и отображения рекламы.
- Happy SDK/Jar SDK: Модуль, который объединяет модули NProxy и web с незначительными вариациями.
Появление Necro вновь подчеркивает важность бдительности пользователей Android и необходимость использования надежных источников для загрузки приложений.