Аналитики «Доктор Веб» обнаружили в популярном мобильном браузере UC Browser скрытую возможность загрузки и запуска непроверенного кода. Оказалось, что приложение способно скачивать вспомогательные программные модули в обход серверов Google Play. Это нарушает правила Google для программ, распространяемых через ее каталог ПО, и представляет серьезную угрозу, ведь таким образом на Android-устройства может быть загружен любой код, в том числе вредоносный.
На данный момент количество загрузок UC Browser из Google Play превышает 500 000 000. При этом браузер может принимать от управляющего сервера команды для скачивания новых библиотек и модулей, они добавляют в программу новые функции и могут использоваться для ее обновления.
К примеру, прямо во время анализа UC Browser загрузил с удаленного сервера исполняемую Linux-библиотеку, которая не является вредоносной и предназначена для работы с документами офисного пакета MS Office, а также файлами формата PDF. Изначально эта библиотека отсутствует в составе браузера. Но после скачивания приложение сохранило ее в свой рабочий каталог и запустило на исполнение.
Согласно действующей политике Google, скачанные из Google Play приложения не могут изменять собственный код, а также загружать какие-либо программные компоненты из сторонних источников. Данные правила появились для борьбы с модульными троянами, которые часто скачивают и запускают вредоносные плагины. О ярких представителях такой малвари исследователи рассказывали в январе и апреле 2018 года.
Аналитики «Доктор Веб» пишут, что потенциально опасная функция обновления присутствует в UC Browser как минимум с 2016 года. Хотя приложение не было замечено в распространении троянских или нежелательных программ, его способность загружать и запускать новые и непроверенные модули представляет потенциальную угрозу. Например, злоумышленники могут получить доступ к серверам разработчика браузера и использовать встроенную в него функцию обновления для заражения сотен миллионов Android-устройств.
По мнению исследователей, UC Browser может использоваться для выполнения атак типа «человек посередине» (Man in the Middle, MITM). Так, для загрузки новых плагинов браузер делает запрос к управляющему серверу и получает от него ссылку на файл. Поскольку программа общается с сервером по протоколу HTTP вместо шифрованного HTTPS, злоумышленники способны перехватывать сетевые запросы приложения. Атакующие могут подменять поступающие команды, указывая в них адрес вредоносного ресурса. В результате программа скачает новые модули с него, а не с настоящего управляющего сервера. Так как UC Browser работает с неподписанными плагинами, он запустит вредоносные модули без какой-либо проверки.
Ниже можно увидеть пример такой атаки, смоделированной аналитиками «Доктор Веб». На видео показано, как потенциальная жертва скачивает через UC Browser и пытается просмотреть в нем документ PDF. Для открытия файла браузер пытается скачать с управляющего сервера соответствующий плагин, однако из-за MITM-атаки и подмены адреса сервера UC Browser загружает и запускает другую библиотеку. Эта библиотека создает SMS-сообщение с текстом «PWNED!».
Более того, сообщается, что возможность загрузки непроверенных компонентов в обход серверов Google Play есть и у «младшего брата» браузера — приложения UC Browser Mini. Эта функция появилась в нем не позднее декабря 2017 года. К настоящему времени программу загрузили свыше 100 000 000 пользователей Google Play, все они тоже находятся под угрозой. Однако, в отличие от UC Browser, в UC Browser Mini описанная выше MITM-атака не сработает.
После обнаружения опасной функциональности в UC Browser и UC Browser Mini специалисты «Доктор Веб» связались с их разработчиком, однако тот отказался от комментариев. Вслед за этим вирусные аналитики сообщили о находке в компанию Google, но на момент выхода этой публикации оба браузера по-прежнему доступны для загрузки и по-прежнему могут скачивать новые компоненты в обход серверов Google Play.
Исследователи считают, что владельцы устройств на Android должны самостоятельно решить, продолжить ли использовать эти программы или удалить их и подождать выхода их обновления с исправлением потенциальной уязвимости.