Трояны-кликеры Android.Phantom используют ML и стриминг с помощью WebRTC

Трояны-кликеры Android.Phantom используют ML и стриминг с помощью WebRTC

Трояны-кликеры Android.Phantom используют ML и стриминг с помощью WebRTC

Компания «Доктор Веб» предупреждает о появлении новых Android-троянов, предназначенных для накрутки рекламных кликов. Новобранцы необычны тем, что для выполнения своих задач используют машинное обучение и видеотрансляции.

Представители семейства, условно названного Android.Phantom, распространяются через репаки игр и моды популярных приложений.

Несколько троянизированных игровых программ были обнаружены в официальном магазине Xiaomi — GetApps:

  • Creation Magic World (более 32 тыс. загрузок);
  • Cute Pet House (>34 тыс.);
  • Amazing Unicorn Party (>13 тыс.);
  • Академия мечты Сакура (>4 тыс.);
  • Theft Auto Mafia (>60 тыс.);
  • Open World Gangsters (>11 тыс.).

Во всех случаях разработчиком числится китайская компания Shenzhen Ruiren Technology Co., Ltd. Вредоносная составляющая, как выяснилось, была добавлена с обновлением приложений и запускается в параллель с донорским кодом.

 

Первые вредоносные апдейты были опубликованы в конце сентября. Анализ внедренного трояна (Android.Phantom.2.origin) показал, что он может работать в двух режимах: signaling и phantom.

В последнем случае зловред незаметно для жертвы использует встроенный браузер на основе WebView и по команде с C2-сервера загружает целевые сайты для клик-фрода, а также файл JavaScript с готовым сценарием и ML-фреймворком TensorFlow для выявления нужных элементов страниц и автоматизации процесса.

ИИ-модель для TensorFlow загружается с внешнего сервера в директорию установленного приложения. Для защиты C2-коммуникаций используется шифрование (AES-ECB).

В режиме signaling троян использует виртуальный экран и делает скриншоты. Он также использует WebRTC для прямого подключения к своему серверу и запускает видеотрансляцию реального времени, что позволяет оператору удаленно управлять браузером: кликать, скролить, осуществлять ввод в веб-формы.

В середине октября в каталоге Xiaomi GetApps появилось еще одно обновление: в троянизированные игры бы добавлен модуль Android.Phantom.5. На поверку довесок оказался дроппером с встроенной полезной нагрузкой Android.Phantom.4.origin.

Последний состоит из двух идентичных модулей, привязанных к разным внешним источникам, и обеспечивает загрузку менее замысловатых кликеров (просто грузят сайты в WebView и имитируют действия реального посетителя), а также библиотеки с Java API, необходимой для использования WebRTC на Android.

Исследователи обнаружили и другие источники распространения Android.Phantom: сайты Spotify Plus и Pro, Apkmody, Moddroid, их телеграм-каналы, а также серверы Discord, админы которых предлагают сомнительные ссылки для скачивания модов.

 

Анализ троянизированных версий Deezer (аналог Spotify) выявил еще двух представителей нового зловредного семейства: загрузчика Android.Phantom.1.origin и шпиона Android.Phantom.5.origin, собирающего информацию о зараженном устройстве (номер телефона, местоположение, список установленных программ и т. п.).

Популярная библиотека Axios оказалась заражена трояном через npm

Популярная JavaScript-библиотека Axios оказалась жертвой атаки на цепочку поставок: злоумышленник скомпрометировал npm-аккаунт одного из ведущих мейнтейнеров и через него опубликовал две вредоносные версии пакета — axios@1.14.1 и axios@0.30.4.

По данным исследователей, обе сборки распространяли скрытый троян для macOS, Windows и Linux. Axios при этом остаётся одной из самых популярных библиотек в экосистеме npm — её скачивают примерно 100 млн раз в неделю.

В заражённые версии Axios добавили всего одну новую зависимость — plain-crypto-js@4.2.1, замаскированную под легитимную библиотеку crypto-js. При этом в исходном коде Axios эта зависимость никак не использовалась: её задачей был запуск postinstall-скрипта, который связывался с управляющим сервером, скачивал вредоносную нагрузку под конкретную ОС и затем зачищал следы своей работы.

Атака развивалась поэтапно. Сначала в npm загрузили «чистую» приманку plain-crypto-js, чтобы создать историю публикаций, а затем — уже заражённую версию. После этого через взломанный аккаунт мейнтейнера были опубликованы две вредоносные версии Axios — сначала для ветки 1.x, а затем для старой, но всё ещё популярной ветки 0.x. То есть атакующий накрыл сразу оба основных сценария использования библиотеки.

Согласно анализу, вредоносный код начинал сетевую активность почти сразу после установки пакета. На macOS троян маскировался под системный процесс Apple, на Windows использовал PowerShell и скрытый скрипт, а на Linux разворачивал Python-бэкдор во временной директории. После этого вредоносный модуль удалял собственные файлы и подменял их «чистой» заглушкой, чтобы при поверхностной проверке установленный пакет не вызывал подозрений.

Вредоносные версии, по имеющимся данным, оставались доступными в npm примерно два-три часа, после чего их удалили, а пакет plain-crypto-js попал под блокировку. При этом заражённые релизы не появились среди тегов GitHub-репозитория Axios, что указывает на публикацию напрямую в npm в обход обычного CI/CD-пайплайна проекта.

RSS: Новости на портале Anti-Malware.ru