Обнаружена уязвимость в беспроводном стеке 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-пакета.

Подпишитесь на новости

Android 17 запретит приложениям внезапно орать в фоне

Google решила покончить с одной из самых мерзких мобильных неожиданностей: когда давно свёрнутое приложение или забытая вкладка браузера внезапно начинает воспроизводить звук. В Android 17 для этого появился системный механизм Background Audio Hardening.

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

Ограничение действует на все приложения в Android 17, даже если они пока не адаптированы под API 37.

Если программа попытается шуметь из неподходящего фонового состояния, система просто проигнорирует её запрос. Воспроизведение и изменение громкости будут заблокированы без ошибки или падения приложения, а запрос аудиофокуса завершится отказом.

Как объясняет Google, нововведение должно остановить случайный запуск звука. Например, приложение могло зависнуть из-за проблем с сетью, быть заморожено системой, а затем очнуться через несколько часов и внезапно продолжить воспроизведение. Другой сценарий — потерянная медиасессия, которая продолжает жить уже без видимого интерфейса и понятной кнопки остановки.

Изменение работает на уровне всей операционной системы, поэтому это не специальное лекарство для Chrome, YouTube или сайтов с наглым автовоспроизведением. Под новые правила попадут браузеры, игры, медиаплееры и остальные приложения.

Побочный эффект тоже имеется. Программы, которым действительно нужно играть музыку или подкасты при выключенном экране, должны правильно использовать foreground-службу для медиавоспроизведения. Разработчикам с кривой реализацией придётся переписать код, иначе Android молча прикрутит им громкость.

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

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