Обнаружена уязвимость в беспроводном стеке Broadcom

Обнаружена уязвимость в беспроводном стеке Broadcom

Обнаружена уязвимость в беспроводном стеке Broadcom

Исследователи безопасности из группы Zero, созданной компанией Google для предотвращения атак, совершаемых с использованием ранее неизвестных уязвимостей, опубликовали результаты обратного инжиниринга прошивки проприетарного WiFi-чипа Broadcom.

Используя уязвимости (CVE-2017-0561), выявленные в процессе изучения прошивки, исследователям удалось подготовить рабочий эксплоит, позволяющий организовать удалённое выполнение кода в контексте Wi-Fi SoC с последующим получением контроля над всей системой. Атака осуществляется через отправку по беспроводной сети специально оформленных управляющих кадров.

Wi-Fi чипы Broadcom представляют собой специализированный процессор (ARM Cortex R4 со своим 640KB ПЗУ и 768KB ОЗУ), на котором выполнятся подобие своей операционной системы с реализаций своего беспроводного стека 802.11 (FullMAC). FullMAC позволил снизить энергопотребление, разгрузив CPU, и упростил реализацию беспроводных драйверов, абстрагировав для операционной системы доступ к усложнённым современным возможностям беспроводных сетей. Обратной стороной подобного подхода, стало существенное усложнение беспроводных чипов и появление нового класса уязвимостей, которые могут привести к выполнению вредоносного кода на стороне Wi-Fi SoC и к дальнейшей компрометации через него всей системы, пишет opennet.ru.

Но уязвимость является частным случаем, а основная проблема кроется в том, что проприетарные прошивки являются "чёрным ящиком", который может свести на нет безопасность даже самой защищённой и проверенной системы. Так как Wi-Fi SoC самодостаточен и отделён от основной операционной системы, эксплуатацию уязвимостей в нём очень трудно блокировать и отследить. В ответ на критику компания Broadcom сообщила, что следующие поколения Wi-Fi SoC будут оснащены MPU (Memory Protection Unit), который позволит управлять доступом к областям памяти и помечать блоки памяти флагом, запрещающим выполнение кода.

В ходе изучения прошивки были выявлены четыре уязвимости в коде обработки кадров: две уязвимости в реализации механизмов роуминга (802.11r Fast BSS Transition (FT) и Cisco CCKM) и две (1, 2) в реализации протокола TDLS (Tunneled Direct Link Setup), предназначенного для обмена данными между разными сетями Wi-Fi в обход точек доступа. Уязвимости устранены в наборе прошивок, поставляемом в апрельском обновлении платформы Android для устройств Nexus 6, Nexus 6P, Nexus 9, Pixel C и Nexus Player.

Примечательно, что в том же обновлении Android устранены ещё две удалённо эксплуатируемые уязвимости. Первая, в crypto-движке Qualcomm (CVE-2016-10230), позволяет выполнить код в контексте ядра Linux при попытке обработки некорректно оформленных параметров. А вторая, в сетевом стеке старых версий ядра Linux (до 4.5) (CVE-2016-10229), позволяет выполнить код через отправку специально оформленного UDP-пакета.

Google упростит исключение приложений из VPN в Android 17

Google решила навести порядок в одной из самых раздражающих мелочей при работе с VPN на Android. В Android 17 Beta 3 появится системный механизм для раздельного туннелирования (split tunneling) — исключения отдельных приложений из VPN-туннеля. В корпорации отмечают, что для этого в Android 17 вводится стандартизированный метод.

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

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

Сейчас split tunneling уже есть у многих популярных VPN-сервисов, но реализован он кто во что горазд. Где-то функция спрятана глубоко в настройках, где-то работает нестабильно, а где-то её вообще нет.

В Android 17 это хотят вынести на уровень самой системы: появится отдельный системный экран настроек, где можно будет выбрать приложения, которые должны обходить VPN. После этого изменения будут применяться сразу, если VPN уже активен, или при следующем подключении.

 

По сути, Google делает довольно простую, но очень практичную вещь: забирает важную функцию из разрозненных реализаций у разных VPN-разработчиков и пытается сделать её нормальной, предсказуемой и одинаково понятной для всех.

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