На прошлой неделе исследователь Марк Ньюлин в подробностях рассказал об уязвимостях в стеке Bluetooth, которые затрагивают в той или иной степени практически все ПК, смартфоны и другие мобильные устройства. Его статья и выступление на конференции ShmooCon дополняют опубликованное ещё в декабре краткое сообщение о найденных проблемах

Основная уязвимость (получившая идентификатор CVE-2023-45866) связана с тем, что большинство реализаций протокола Bluetooth поддерживают установление связи с клавиатурой (или Bluetooth-устройством, которое притворяется клавиатурой) без аутентификации. В результате на уязвимых устройствах (с некоторыми оговорками, о которых позже) потенциальный злоумышленник может добавить собственную клавиатуру и отправлять произвольные нажатия клавиш.

Ньюлин — автор более раннего исследования про небезопасность беспроводной периферии. В 2016 году он обнаружил разнообразные проблемы в устройствах, которые общаются с компьютером через собственный USB-приемник, обычно работающий на частоте 2,4 гигагерца. По результатам той работы автор предположил, что использование Bluetooth-клавиатур является более безопасным методом.

В прошлом году он решил проверить это допущение на практике и нашёл не менее серьёзные проблемы. В большинстве случаев они, к счастью, решаются доставкой обновления для операционной системы. Но есть как минимум два исключения. Это старые, не получающие обновления устройства на базе Android 10-й и более ранних версий. И Bluetooth-клавиатуры Apple Magic Keyboard, в которых Марк нашёл уникальную проблему.

По версии исследователя, уязвимость находится на стыке теории и практики — в том смысле, что её существование обусловлено как особенностями спецификации протокола Bluetooth HID, так и его реализацией в конкретных устройствах. Из-за этого получается, что ей подвержены практически все операционные системы, но при этом в каждой из них условия для потенциальной атаки немного отличаются.

Например, в Android добавить «левую» клавиатуру можно практически всегда — достаточно, чтобы модуль Bluetooth был включен. Ньюлин подтвердил наличие данной проблемы во всех релизах Android начиная с версии 4.2.2 2012 года. Декабрьский набор патчей закрыл данную уязвимость в Android 11, 12, 13 и 14.

В дистрибутивах ОС на базе Linux возможно эксплуатировать уязвимость, если модуль Bluetooth находится в режиме, открытом для подключения новых устройств (например, когда открыты настройки Bluetooth). Примечательно, что проблема была закрыта в 2020 году, но тот патч в итоге так и не добрался до большинства популярных дистрибутивов. Повторный патч для стека BlueZ также был выпущен в декабре.

В ОС Windows у уязвимости наблюдается особое поведение. С одной стороны, в отличие от Linux и Android, здесь невозможна атака типа zero click. Не получится «подкинуть клавиатуру» без какого-либо уведомления пользователя. Запрос на подключение нового Bluetooth-устройства выводится пользователю. Но успешное выполнение атаки возможно, если пользователь взаимодействует с этим уведомлением любым образом.

По данным автора исследования, «согласие» с добавлением устройства, отказ от такового, даже просто закрытие уведомления приведут к установке соединения с поддельной клавиатурой. Проблема закрыта в январском наборе патчей от Microsoft (для проблемы в Windows также присвоен уникальный идентификатор CVE-2024-21306).

Уязвимость присутствует в мобильной и настольной ОС для устройств Apple, но там её эксплуатация максимально затруднена. Провести атаку можно, и подключение также произойдет без уведомления пользователя, но только в момент, когда устройство Apple подключается к клавиатуре Apple Magic Keyboard. На стороне ОС эта проблема была закрыта в iOS 17.2 (iOS 16 осталась без патча, более ранние версии ОС не проверялись) и в Mac OS Sonoma 14.2. Но потребовался и патч для самой клавиатуры Magic Keyboard. Она также может стать инструментом атаки.

В одном исследованном сценарии злоумышленник может подключиться к клавиатуре и перехватывать ввод пользователя (пока тот не поймёт, что его клавиатура связана не с компьютером, а с каким-то другим устройством). В другом, более опасном сценарии, из клавиатуры (через ту же проблему с подключением без аутентификации) можно выкрасть ключ, с помощью которого злоумышленник способен подключиться к компьютеру жертвы. В списке уязвимых устройств Марка Ньюлина указана также мышь Magic Mouse, но информации о наличии патча для неё пока нет.

У данных уязвимостей, как и у обнаруженных ранее (и не всегда решаемых путём апдейта ПО) проблем с проприетарными беспроводными протоколами передачи данных от клавиатур и мышей, есть одно фундаментальное ограничение: для атаки необходимо находиться достаточно близко от жертвы. Это сразу переводит потенциальные атаки в категории сложных и таргетированных. Вообще «лишняя клавиатура» должна быть подключена в удачный момент: когда компьютер или смартфон разблокированы. Даже в этом случае условия для развития атаки ещё нужно создать

Тем не менее не стоит недооценивать работу Марка Ньюлина. Начав исследование скорее из любопытства, он нашёл серьёзную универсальную проблему, которая присутствовала в сотнях миллионов устройств в течение многих лет.

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставь комментарий! Поделись своим мнениемx