Исследователи компании Bastille Networks рассказали о новом способе атак на беспроводные мыши и клавиатуры. Данная техника, а также комплекс уязвимостей, которые она использует, получила название MouseJack. Перед такой атакой не устоят устройства компаний Dell, Logitech, Microsoft, HP, Amazon, Gigabyte и Lenovo, работающие не посредством Bluetooth. Осуществить атаку можно удаленно, с расстояния в 100 метров, и для работы хакеру понадобится только простой USB-донгл, собрать который можно, затратив всего около $15.
Сама по себе тема атак на беспроводную периферию не нова, к примеру, перехват данных с Bluetooth-клавиатур уже демонстрировался специалистами неоднократно. Принято считать, что устройства, не использующие Bluetooth, защищены несколько лучше, но исследователи Bastille Networks доказывают, что это не так.
Эксперты выяснили, что устройства, работающие на частоте 2,4 ГГц, тоже имеют свои недостатки. В отличие от Bluetooth, данная технология не имеет единого стандарта, которому должны были бы следовать производители, что оставляет им достаточно широкое пространство для маневра.
Такие клавиатуры передают радиочастотный сигнал о нажатиях клавиш USB-донглу, вставленному в USB-порт компьютера, и аналогичным образом общаются с компьютером беспроводные мыши. При этом производители понимают, что оставлять этот обмен данными без защиты, значит подвергать пользователя риску. Следовательно, большинство производителей используют шифрование: ключ шифрования известен только USB-донглу, то есть только он может расшифровать, какие клавиши были нажаты на клавиатуре, или куда сдвинулась мышь; атакующий (даже если он сумеет перехватить обмен данными) этого сделать не сможет.
Но это теория. На практике оказалось, что шифрованием очень часто пренебрегают. Так, исследователи выяснили, что производители не считают нужным шифровать обмен данными между беспроводной мышью и донглом. Также во многих случаях нет никакого механизма аутентификации: донгл и мышь не проходят никакой процедуры спарки, то есть донгл не увидит разницы между пакетами, полученными от настоящей мыши, и поддельными пакетами, отправленными атакующим. В результате злоумышленник может «притвориться мышью» и передать донглу собственные сигналы о кликах и передвижениях.
Однако основная проблема заключается в том, что атакующий также может передать уязвимому донглу созданные определенным образом пакеты, которые будут расценены устройством как нажатия клавиш клавиатуры, а не как передвижения мыши. То есть злоумышленник может симулировать полноценный ввод с клавиатуры, находясь при этом в радиусе 100 метров от жертвы. И не важно, какую ОС использует жертва, ведь атака направлена не на ОС. Специалисты Bastille Networks полагают, что таким способом можно передавать данные со скоростью 1000 слов в минуту, а значит, установка руткита на машину жертвы займет всего около 10 секунд.
Исследователи пишут, что большинство уязвимых перед MouseJack донглов, построены на базе трансиверов серии nRF24L компании Nordic Semiconductor. Исследователи и сами использовали для создания спуфингового девайса аналогичный трансивер и олдскульный контроллер от консоли Nintendo. Не то чтобы чипы nRF24L официально поддерживали сниффинг пакетов, но эту функцию на них все же удалось реализовать.
Также специалисты пишут, что пара строк кода на Python превратят в орудие для атак USB-донгл CrazyRadio, который создавался для управления оперсорным дроном Crazyflie; он тоже базируется на nRF24L+ и фактически является усиленной версией донглов, использующихся для клавиатур и мышей (за счет более мощной антенны).
А теперь скверная новость – специалисты Bastille Networks пытались устранить проблему, работая совместно с производителями уязвимых устройств, более трех месяцев. Выяснилось, что порядка половины уязвимых мышей обновить попросту невозможно, так что исправлений для них можно не ждать. Полный список уязвимых устройств можно найти здесь.
Компания Microsoft сообщает, что проводит расследование и обещает выпустить патч. Компания Logitech уже представила новую прошивку, закрывающую уязвимость MouseJack. Представители Dell рекомендуют владельцам беспроводных комплектов KM714 установить новую прошивку от Logitech, обратившись в поддержку, а обладателям KM632 – заменить свои устройства. Компания Lenovo также согласна осуществить бесплатную замену уязвимых устройств, для этого пользователям тоже нужно связаться с официальной поддержкой.
Все подробности о MouseJack опубликованы на официальном сайте уязвимости (у нее есть не только сайт, но даже собственный логотип, см. верхнюю иллюстрацию). Исследователи Bastille Networks также опубликовали на GitHub исходные коды своих утилит и прошивки, использовавшихся для атак.
Фото: Bastille Networks