🔵 Paint it Blue: уязвимость в Bluetooth - серьёзный вызов безопасности ▪️ Исследователи Synacktiv обнаружили критический баг Fluoride (Bluetooth-стек …
▪️ Исследователи Synacktiv обнаружили критический баг Fluoride (Bluetooth-стек Android): CVE-2023-40129 - integer underflow в протоколе GATT.
▪️ Без какого-либо взаимодействия с пользователем можно вызвать heap-overflow (~64 КБ), что даёт шанс получить контроль над Bluetooth-демоном.
▪️ Авторы показали рабочий эксплоит, обошедший защиту allocator’ов (Scudo и Jemalloc) - значит, атака реальна.
▪️ Вывод: Bluetooth - опасная «точка входа». Если телефон уязвим - лучше отключить Bluetooth, пока нет патча.
Диаграмма выше иллюстрирует стек Bluetooth. Он разделён на две основные части: стек контроллера располагается в Bluetooth-чипе, тогда как стек хоста реализован операционной системой. Интерфейс Host Controller Interface (HCI) обеспечивает взаимодействие между этими двумя компонентами.
Контроллер в основном управляет физическими и логическими транспортами. Наш эксплойт опирается на ACL — асинхронный транспорт, который передаёт дата-кадры. На Android стек хоста, называемый Fluoride, работает в userland в виде демона.
После установления ACL-соединения могут инициироваться соединения L2CAP (Logical Link Control and Adaptation Protocol) для доступа к различным Bluetooth-сервисам (BNEP, HID, AVCTP и т. д.), предоставляющим хорошо известные возможности, такие как совместное использование сети, потоковая передача видео и т. п. Каждый сервис идентифицируется уникальным Protocol Service Multiplexer (PSM).
https://www.synacktiv.com/en/publications/paint-it-blue-attacking-the-bluetooth-stack
👉 @thehaking