Исследование

Кот в мешке: рекламное ПО в смартфонах

В нашу службу поддержки все чаще приходят запросы, в которых пользователи жалуются на неизвестно откуда взявшуюся назойливую рекламу в своих смартфонах. В одних случаях решить проблему довольно просто. В других случаях задача по удалению рекламы оказывается гораздо сложнее: рекламная программа помещает себя в системный раздел, и попытки избавиться от нее могут привести к выходу устройства из строя. Кроме того, реклама может быть встроена в неудаляемые системные приложения и библиотеки на уровне кода. По нашим данным, 14,8% всех пользователей, атакованных каким-либо вредоносным или рекламным ПО за год, имеют дело именно с заражением системного раздела.

Почему так происходит? Мы наблюдаем две основных стратегии внедрения на устройство неудаляемой рекламы:

  • Вредоносное ПО получает на устройстве root и устанавливает рекламные приложения в системные разделы.
  • Отвечающий за отображение рекламы код (или его загрузчик) содержится в прошивке устройства еще до того, как оно попадет в руки потребителя.

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

Как правило, доля тех, кто столкнулся с таким рекламным ПО, составляет 1–5% от общего количества пользователей наших защитных решений (в зависимости от конкретного бренда). В основном это владельцы смартфонов и планшетов определенных брендов из нижнего ценового сегмента. Однако у некоторых популярных производителей, предлагающих недорогие устройства, этот показатель может доходить до 27%.

Процент пользователей, столкнувшихся с вредоносным или рекламным ПО в системных разделах, от общего количества пользователей продуктов «Лаборатории Касперского» в стране май 2019 — май 2020 г.

Кто там?

Среди наиболее распространенных примеров вредоносного ПО, устанавливаемого в системный раздел смартфона, — троянцы Lezok и Triada. Второй примечателен тем, что рекламный код был встроен не куда-нибудь, а прямо в libandroid_runtime — ключевую библиотеку, которая используется практически всеми приложениями на устройстве. Несмотря на то, что эти угрозы были выявлены несколько лет назад, пользователи продолжают сталкиваться с ними.

Но Lezok и Triada — это только верхушка айсберга. Далее мы расскажем, с чем еще сталкиваются пользователи сегодня и в каких системных приложениях мы встречали «дополнительный» код.

Trojan-Dropper.AndroidOS.Agent.pe

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

Функции из полезной нагрузки Trojan-Dropper.AndroidOS.Agent.pe

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

Trojan.AndroidOS.Sivu.c

Троянец Sivu представляет собой дроппер, маскирующийся под приложение HTMLViewer. Зловред состоит из двух модулей и может использовать root-права на устройстве. Первый модуль имеет функции показа рекламы поверх других окон, а также в уведомлениях.

Троянец проверяет, можно ли показать рекламу поверх выведенного на экран приложения

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

Загрузка, установка и запуск приложений

AdWare.AndroidOS.Plague.f

Это рекламное приложение прикидывается системным сервисом и называет себя Android Services (com.android.syscore). Без ведома пользователя оно может скачивать и устанавливать приложения, а также демонстрировать рекламу в уведомлениях.

Незаметная установка приложений после выключения экрана

Кроме этого, Plague.f может показывать рекламу в SYSTEM_ALERT_WINDOW — всплывающем окне поверх всех приложений.

Trojan.AndroidOS.Agent.pac

Agent.pac может выдавать себя за приложение CIT TEST, предназначенное для проверки правильности функционирования компонентов устройства. Позволяет по команде от C&C запускать приложения, открывать URL (также получаемые от командного сервера), скачивать и запускать произвольные DEX-файлы, устанавливать и удалять приложения, показывать уведомления, запускать сервисы.

Запуск загруженного DEX-файла

Trojan-Dropper.AndroidOS.Penguin.e

Этот троянец-дроппер скрывается в приложении под названием STS, которое не имеет никаких функций, кроме отображения рекламы. Загружаемый код обфусцирован. Умеет показывать Toast Window; в данном контексте это аналог SYSTEM_ALERT_WINDOW — окно поверх всех приложений.

Также умеет загружать и запускать код.

ToastWindow и запуск стороннего кода

Trojan-Downloader.AndroidOS.Necro.d

В отличие от предыдущих троянцев, Necro.d представляет собой нативную библиотеку, расположенную в системной директории. Его запуск встроен в другую системную библиотеку — libandroid_servers.so, отвечающую за работу сервисов Android.

Запуск троянца

По команде управляющего сервера Necro.d может скачивать, устанавливать, удалять и запускать приложения. Помимо этого, разработчики решили оставить себе бэкдор для выполнения произвольных shell-команд.

Выполнение полученных команд

Также Necro.d может скачивать пакет получения прав суперпользователя kingroot — видимо, чтобы система безопасности ОС не путалась под ногами при доставке «крайне нужного» пользователю контента.

Скачивание Kingroot

Trojan-Downloader.AndroidOS.Facmod.a

Зловред Facmod.a мы встречали в приложениях, без которых нормальное функционирование смартфона невозможно: Settings, Factory Mode, SystemUI. Нам попадались устройства, на которых в SystemUI было встроено сразу два вредоносных модуля.

Расшифровка адреса C&C

Первый — com.android.systemui.assis — может получать  с сервера ufz.doesxyz[.]com адрес для загрузки произвольного кода с названием DynamicPack, затем скачивать и запускать его:

Скачивание и запуск стороннего кода

Второй модуль — com.cash — загружает полезную нагрузку из зашифрованного файла в ресурсах приложения. Полезная нагрузка решает обычные для такого рода угроз задачи по установке и запуску приложений:

Незаметная установка приложений

Кроме этого, у Facmod.a есть функции для периодического запуска браузера и открытия в нем страницы с рекламой.

Trojan-Dropper.AndroidOS.Guerrilla.i

Троянец Guerrilla.i встречается в системном приложении Launcher, которое отвечает за функционирование «рабочего стола» смартфона. Задачи троянца — периодический показ рекламы и открытие рекламных страниц в браузере. Конфигурационный файл Guerrilla.i получает после обращения по адресу htapi.getapiv8[.]com/api.php?rq=plug. В том же файле может содержаться и адрес для загрузки дополнительного модуля, расширяющего функциональность.

Trojan-Dropper.AndroidOS.Guerrilla.i, периодический показ рекламы

Trojan-Dropper.AndroidOS.Virtualinst.c

Этот дроппер может скрываться в приложении Theme (com.nbc.willcloud.themestore). Возможности Virtualinst.c не отличаются оригинальностью: скачивание, установка и запуск приложений без ведома пользователя.

Trojan-Dropper.AndroidOS.Virtualinst.c, установка приложений

AdWare.AndroidOS.Secretad.c

Еще одно рекламное ПО, которое мы обнаружили, было встроено в каталог обоев для рабочего стола. Полезная нагрузка Secretad.c содержится в файле kgallery.c1ass. Она распаковывается и запускается, например, по событиям включения экрана или установки приложений:

Распаковка полезной нагрузки

Secretad.c может демонстрировать рекламу в полноэкранном режиме, открывать нужную страницу в браузере или запускать само рекламируемое приложение. Как и многие другие рекламные программы, Secretad.c может устанавливать приложения незаметно от пользователя.

Скрытая установка приложений

Кроме того, в приложении есть еще один рекламный модуль:

Его полезная нагрузка зашифрована в файле assets/1498203975110.dat. В результате ее работы, например, может неожиданно открыться страница рекламируемого приложения в Google Play, запуститься какое-нибудь из установленных приложений, или откроется браузер.

Реклама от производителя

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

При этом пользователю, как правило, не предоставляется выбор: купить устройство за полную цену или же чуть подешевле, но с пожизненной рекламой. Более того, ни в одном магазине электроники мы не увидели заметного и понятного предупреждения, что после покупки телефона пользователя будут заставлять смотреть рекламу. Иными словами, покупатели могут и не подозревать, что за собственные деньги покупают себе рекламный билборд.

Meizu

В Meizu не скрывают, что показывают рекламу в своих приложениях. Она довольно ненавязчивая, и ее даже можно выключить в настройках. Однако в предустановленном приложении AppStore (c4296581148a1a1a008f233d75f71821) мы выявили «скрытую рекламу»: она способна загружаться незаметно и отображаться в невидимых окнах (обычно такой подход используют для накрутки показов), расходуя трафик и заряд батареи:

Незаметная загрузка рекламы

Но это еще не все. Приложение может загружать сторонний JavaScript-код и выполнять его:

Загрузка и выполнение JS-кода

Кроме этого, предустановленный магазин приложений AppStore может отключать звук, получать доступ к SMS, копировать их содержимое и вставлять его в загруженные страницы.

Чтение SMS и использование их содержимого в веб-странице

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

Но AppStore — не единственное подозрительное приложение в аппаратах Meizu. Мы обнаружили, что Meizu Music (com.meizu.media.music 19e481d60c139af3d9881927a213ed88) содержит зашифрованный исполняемый файл, служащий для загрузки и исполнения некого Ginkgo SDK:

Скачивание Ginkgo SDK

О задачах этого SDK можно только догадываться: устройства Meizu далеко не всегда скачивают его, и нам не удалось получить актуальную версию. Однако те версии Ginkgo SDK, которые попадали нам из других источников, занимаются показом рекламы и установкой приложений без ведома пользователя.

Приложение com.vlife.mxlock.wallpaper (04fe069d7d638d55c796d7ec7ed794a6) также содержит зашифрованный исполняемый файл и в конечном итоге несет стандартные для «серых» рекламных модулей функции, в том числе и возможность скрытой установки приложений.

Скрытая установка приложений

Мы обращались в Meizu по поводу вышеперечисленных находок, однако ответа так и не получили.

Fotabinder

Помимо сомнительных файлов в устройствах конкретного вендора, мы обнаружили проблему, затрагивающую огромное количество смартфонов. В памяти многих устройств файл /bin/fotabinder (3fdd84b7136d5871afd170ab6dfde6ca), который может скачивать файлы на устройства пользователей и выполнять на них код, полученный от одного из удаленных серверов: adsunflower[.]com, adfuture[.]cn или mayitek[.]com

Скорее всего, данный файл является частью системы обновления или тестирования, но зашифрованные адреса C&C и функции, способные предоставить удаленный доступ к устройству, заставляют насторожиться.

И что все это значит?

Рассмотренные нами примеры демонстрируют, что фокус некоторых поставщиков мобильных устройств может быть смещен в сторону максимизации прибыли за счет всевозможных рекламных инструментов. Даже если эти инструменты причиняют определенные неудобства владельцу устройства. Если рекламные сети готовы платить деньги за просмотры, клики и установки, невзирая на их источник, у производителей появляется соблазн внедрять рекламные модули в устройства в принудительном порядке — это увеличит прибыль с каждого проданного устройства.

К сожалению, если пользователь приобрел устройство с такой предустановленной «рекламой», гарантированно удалить ее без риска повреждения системы зачастую невозможно. Остается надеяться на энтузиастов, создающих альтернативные прошивки для устройств. Но нужно понимать, что перепрошивка может привести к потере гарантии и даже вывести устройство из строя.

В случае же с теми рекламными модулями, которые пока не сделали ничего вредоносного, пользователю остается лишь надеяться, что разработчики случайно, сами того не подозревая, не добавят рекламу из какой-нибудь вредоносной партнерской сети.

IoC

MD5

42c97a5da141b9cfd7696583875bcef5
0065d7177dfd65cebb1e2e788dce0082
fc0824678f582b0bdf65856e90cf0a01
520b50eee2f9dc522a87398f3bd5be94
cf808957da17f6a0b5d266b0e301bf63
04705df0913ccc0a12abddbcb757bac4
5d05e62fb18c6e1128522fe3371d2c91
5a2e5a1f768e4f33bd007f9acd2a9d0d
6c0d83e9e0eeed44ab1a1e5affb68b85
28119119d19fc3d986df63517dee465e
c81d66f5206193ce76b7f4f0b813f705
00c62413845fba1d9ddfd0e8d99f167b
d7b13e3f54ff5b8ff3e2c78e67e665eb
04fe069d7d638d55c796d7ec7ed794a6

 

C&C

www.ywupscsff[.]com/fud.do
www.mzeibiyr[.]com/7ve5.do
i151125.infourl[.]net:9080
www.jueoxdr[.]com/ea.do
ufz.doesxyz[.]com
htapi.getapiv8[.]com/api.php?rq=plug
stable.icecyber[.]org
404mobi[.]com
51ginkgo[.]com
lbjg7[.]com
bigdata800[.]com
apd1.warnlog[.]com
apd1.thunup[.]com.

Кот в мешке: рекламное ПО в смартфонах

Ваш e-mail не будет опубликован. Обязательные поля помечены *

 

Отчеты

CloudSorcerer: новая APT-угроза, нацеленная на российские государственные организации

«Лаборатория Касперского» обнаружила новую APT-угрозу CloudSorcerer, нацеленную на российские государственные организации и использующую облачные службы в качестве командных серверов аналогично APT CloudWizard.

StripedFly: двуликий и незаметный

Разбираем фреймворк StripedFly для целевых атак, использовавший собственную версию эксплойта EternalBlue и успешно прикрывавшийся майнером.

Подпишитесь на еженедельную рассылку

Самая актуальная аналитика – в вашем почтовом ящике