Четыре уязвимости, обнаруженные в чипах производства Qualcomm, используемых почти в 900 млн устройств под управлением ОС Android, позволяют атакующему заполучить полный контроль над системой. Исследователи из Check Point, обнаружившие баги, нарекли их QuadRooter и заявляют, что патча, способного устранить эти уязвимости, стоит ждать лишь в сентябре.

Информация об этих уязвимостях повышения привилегий стала достоянием общественности после выступления на конференции DEF CON Адама Донфилда (Adam Donefield), старшего исследователя из этой ИБ-компании, специализирующегося на мобильных платформах. Уязвимости присутствуют в ряде подсистем чипсетов Qualcomm, используемых в наиболее популярных Android-устройствах, производимых такими компаниями, как Samsung, HTC, Motorola и LG.

«Данные уязвимости позволяют атакующим обойти все существующие защитные механизмы и исполнить код ядра, повысить свои привилегии и заполучить доступ уровня root, полностью обойдя защиту SELinux», — заявил Майкл Шаулов (Michael Shaulov), руководитель отделов обеспечения безопасности мобильных устройств и облачных сервисов. SELinux (Security-Enhanced Linux) — компонент безопасности ядра Linux, отвечающий за контроль доступа к подсистемам Android.

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

К числу уязвимых устройств относятся:

  • BlackBerry Priv
  • Blackphone 1 и 2
  • Google Nexus 5X, 6 и 6P
  • HTC One M9 и HTC 10
  • LG G4, G5 и V10
  • New Moto X от Motorola
  • OnePlus One, 2 и 3
  • Samsung Galaxy S7 и S7 Edge
  • Sony Xperia Z Ultra

Уязвимости напрямую связаны с драйверами Qualcomm, поддерживающими взаимодействие между различными компонентами чипсета. «Каждая из уязвимостей является уникальной и затрагивает одну из четырех ключевых подсистем Android», — отметил Шаулов.

Одна из этих уязвимостей (CVE-2016-5340) кроется в подсистеме распределения памяти, называемой ashmem, позволяющей процессам эффективно использовать общие буферы памяти. «В устройствах на базе чипсетов Qualcomm используется модифицированная система ashmem, что позволяет с легкостью заполучить доступ к системному API через GPU-драйверы», — говорится в отчете.

Два use-after-free-бага вызваны условиями гонки, возникающими в GPU-компоненте под названием KGSL (Kernel Graphics Support Layer) — драйвере ядра, ответственном за отрисовку графики. Первая уязвимость (CVE-2016-2503) связана с механизмом синхронизации ЦПУ и приложений, за который ответственен KGSL-драйвер «kgsl_sync».

«Функция достаточно часто провоцирует появление условий гонки, когда два параллельно запущенных процесса одновременно делают к ней вызов… В таких случаях параметр refcount объекта syncsource принимает значения ниже 0, что и делает его уязвимым к use-after-free-атаке», — пишут специалисты.

Второй баг (CVE-2016-2504), находящийся в KGSL-драйвере, проявляет себя в тех случаях, когда модуль создает в памяти объект «kgsl_mem_entry». «Поскольку процесс, находящийся в пользовательском пространстве, может выделять память для GPU, он также может как создавать, так и уничтожать объект kgsl_mem_entry… А поскольку при этом отключен принудительный контроль доступа, другой процесс может освободить этот объект, тем самым создавая use-after-free-уязвимость», — гласит отчет.

Последний баг (CVE-2016-2059) кроется в модуле Linux IPC. Этот компонент ответственен за организацию межпроцессного взаимодействия между различными Qualcomm-компонентами, процессами пользователя и драйверами оборудования, отмечают эксперты.

«Уязвимость находится в модуле ядра, называемом ipc_router… Ее эксплойт позволяет заполучить привилегии доступа уровня root и в то же время обойти защиту SELinux», — говорится в отчете.

Исследователи сообщили о своих находках еще в апреле, впоследствии представители Qualcomm классифицировали данные уязвимости как высокоопасные и выпустили ряд патчей для устройств производства Samsung, HTC, Motorola, LG и других компаний. Однако из-за того, что между конечными устройствами, операторами беспроводной связи, OEM и производителями чипов нет налаженных каналов связи, патчи могут попасть на устройства лишь спустя многие недели, а то и месяцы. «Отчасти эта проблема вызвана тем, что разные производители, модели телефонов, операторы связи и дистрибьюторы используют различные сборки Android», — отметили эксперты.

Представители Qualcomm на просьбу прокомментировать ситуацию ответили следующее: «Разработка технологий, которые обеспечивают высокую безопасность и конфиденциальность данных, является приоритетом для компании Qualcomm Technologies, Inc. (QTI).
В период с февраля по апрель 2016 года исследователь в области информационной безопасности предоставил нам информацию о четырех уязвимостях. Для устранения проблемы с апреля по июль мы разработали и выпустили патчи для всех четырех уязвимостей, своевременно предоставив их нашим клиентам, партнерам и сообществу разработчиков открытого ПО. Патчи были также размещены на репозитории CodeAurora. QTI продолжает активно работать как внутри компании, так и со специалистами в области безопасности с целью выявления и устранения потенциальных уязвимостей».

Google уже выпустила патчи для линеек устройств Nexus 5X, Nexus 6 и Nexus 6P, устранив три уязвимости, четвертая же должна быть устранена в сентябрьском патче.

Категории: Главное, Уязвимости