Лаборатория Armis раскрыла сведения о серии уязвимостей под кодовым именем BlueBorne, охватывающих Bluetooth-стеки Linux, Android, iOS и Windows. По имнению Марка Кокса (Mark J. Cox), возглавляющего команду, занимающуюся решением проблем безопасности в продуктах Red Hat, выявленная проблема может претендовать на звание самой опасной уязвимости в Linux за последние 18 лет.
Проблема позволяет организовать выполнение кода с привилегиями ядра на широком спектре устройств с включенной поддержкой Bluetooth через отправку в эфир специально оформленных пакетов. Атака может быть проведена скрыто без необходимости сопряжения устройств, перевода в режим доступности для обнаружения или выполнения каких-либо действий со стороны пользователя. Для атаки достаточно, чтобы на устройстве был включен Bluetooth и жертва находилось в зоне достижимости атакующего (до 10 метров), пишет opennet.ru.
По предварительной оценке проблема может затрагивать около 5.3 миллиардов устройств, от ноутбуков, смартфонов и умных часов до принтеров, телевизоров и автомобильных информационно-развлекательных систем. Выявившие уязвимости исследователи не исключают появление червей, способных использовать выявленные уязвимости для поражения устройств по цепочке от одного уязвимого устройства к другому. Опасность уязвимости также усугубляется тем, что, по оценке исследователей, около 40% уязвимых устройств (более 2 миллиардов!) останутся без устранения проблемы, так как время их поддержки истекло и обновления прошивки уже не выпускаются.
BlueBorne охватывает восемь уязвимостей:
- CVE-2017-1000251 - уязвимость в коде разбора конфигурации L2CAP в ядре Linux, позволяющая выполнить код атакующего;
- CVE-2017-1000250 - уязвимость в реализации протокола SDP (Service Discovery Protocol) в стеке BlueZ, которая может привести к утечке информации (может быть получена часть памяти процесса bluetoothd);
- CVE-2017-0781 и CVE-2017-0782 - две уязвимости в платформе Android, которые могут привести к выполнению кода с повышенными привилегиями;
- CVE-2017-0785 - уязвимость в Android, которая может привести к утечке информации;
- CVE-2017-0783, CVE-2017-8628 - логические уязвимости в Bluetooth-стеке Android и Windows (Windows Vista+), при помощи которых можно совершить MITM-атаку для перехвата обмена данными по Bluetooth;
- CVE-2017-14315 - уязвимость в протоколе Apple Low Energy Audio Protocol, позволяющая организовать выполнение кода.
В ядре Linux проблема присутствует в коде функции l2cap_parse_conf_rsp, присутствующей начиная с ядра 3.3 (октябрь 2011 г.). Проблема была устранена 9 сентября. В ядрах Linux со включенной защитой от переполнения стека (CONFIG_CC_STACKPROTECTOR) уязвимость приводит только к краху ядра. Подобная защита по умолчанию включена в ядрах RHEL, CentOS, Fedora, Ubuntu и большинства стационарных дистрибутивов Linux, поэтому в обычных дистрибутивах возможен лишь вызов краха, а основная опасность угрожает мобильным Linux-платформам, таким как Tizen.
Проблемы в Android уже устранены Google в сентябрьском обновлении платформы (обновления прошивок от производителей устройств может затянутся на месяцы). Для определения попыток совершения атаки для Android подготовлено специальное приложение BlueBorne Detector. Компанией Apple проблема устранена в iOS 10. Устройства с iOS 9.3.5 и AppleTV 7.2.2 и более ранними версиями остаются уязвимы. Компания Microsoft намерена выпустить обновление в течение суток. Всем пользователям до установки исправления рекомендует отключить по умолчанию Bluetooth и включать его только при необходимости.