OnePlus не закрыл уязвимости: обычное приложение получает root без разрешений

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

cover.svg

Исследователь безопасности Расмус Мооратс показал, что смартфон OnePlus 15 с последней версией OxygenOS можно превратить в подконтрольный устройство при помощи вредоносного приложения, которое владелец устанавливает сам. Такому приложению не нужны никакие особые разрешения — и всё же оно способно получить root, наивысший уровень контроля над телефоном.

Как устроена атака

Цепочка состоит из двух дефектов в собственном ПО OnePlus. Первый скрыт в службе AtlasService, которая собирает отладочные данные, работает с правами root и принимает вызовы от любого приложения, не проверяя, кто именно обращается. Специально составленный вызов доходит до отладочного инструмента OnePlus, который без проверки подставляет переданный текст в системную команду. Так приложение получает root, но лишь внутри ограниченной зоны dumpstate, где доступно далеко не всё.

Второй дефект завершает дело. В прошивке есть аппаратный помощник olc2 с командой, исполняющей любую переданную ей shell-инструкцию. Единственная защита — вызывающий уже должен быть root, а это как раз обеспечивает первая ошибка. На сей раз команда исполняется в зоне, дающей все низкоуровневые привилегии Linux, включая загрузку кода в ядро, — то есть полный контроль над устройством.

Кого это касается

Атака локальная: вредоносная программа должна быть заранее установлена и запущена, через интернет её не активировать. Но, оказавшись на телефоне, приложение не запрашивает разрешений и ничего не показывает пользователю — и всё сработало на нетронутом, «магазинном» аппарате. Признаков реального использования уязвимостей нет.

Мооратс подтвердил атаку и на более старом OnePlus 12 Pro и ожидает, что проблема распространяется на OxygenOS 16 в целом. OnePlus сообщил ему, что те же ошибки затрагивают многие его устройства и аппараты OPPO, построенные на общем ПО, но не уточнил, какие именно.

Спор о раскрытии

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

Переписка тянулась около пяти месяцев. В июне OnePlus попросил повременить, и Мооратс согласился не публиковать до 17 сентября. На запросы в июле и сентябре ответа не последовало. 24 сентября он всё же опубликовал материал — патча к тому моменту так и не вышло, CVE не присвоен, а собственного бюллетеня OnePlus обнаружить не удалось.

Пока исправления нет, единственная практичная защита — та самая, что нужна атаке для старта: ставить приложения только из источников, которым вы доверяете.


Источник: The Hacker News

Комментарии

Войдите, чтобы комментировать.

  • Пока нет комментариев.