Изображение: home thods, Flickr
Компьютерные мыши и клавиатуры с радиоинтерфейсом и USB-трансивером стоят немногим дороже обычных проводных моделей и пользуются популярностью. Но такие устройства не защищены от взлома: собрать набор для проведения атаки можно всего за 300 рублей, а вестись она может с расстояния до 1 км.
Мы протестировали безопасность устройств Logitech, A4Tech и Microsoft. В ходе тестов нам удалось перехватить данные, передаваемые клавиатурами и мышами, дешифровать трафик и осуществить ряд других атак. Обнаруженные уязвимости могут привести к утечке паролей, платежных реквизитов, персональных данных и другой важной информации.
«Стандартные» проблемы
В настоящее время отсутствует стандарт, регулирующий безопасность беспроводных устройств ввода, функционирующих на частоте 2,4 ГГЦ (не путать с Wi-Fi). А потому вопросы защиты остаются целиком на совести производителей. В некоторых моделях при подключении мышей к трансиверу (приемопередатчику) не используются ни механизмы аутентификации, ни шифрование, что позволяет выдать свое устройство за чужую мышь и перехватить управление курсором.
Клавиатуры с радиоинтерфейсом, в отличие от мышей, как правило, шифруют сигнал. Но это не всегда помогает. Во-первых, незашифрованные команды мыши можно использовать для эмуляции ввода с клавиатуры — благодаря унификации протоколов. Такой метод, получивший название MouseJack, показала компания Bastille Networks в феврале 2016 года. Во-вторых, ряд трансиверов позволяют подключать более одного устройства к одному донглу: злоумышленник может использовать удобную опцию, позволяющую не занимать лишние USB-разъемы, и добавить свою беспроводную клавиатуру к легитимно работающей мыши. Наконец, в некоторых моделях клавиатур данные передаются в открытом виде.
Сценарии атак
Прослушивание эфира. Перехват нажатий клавиш клавиатуры, которая не шифрует трафик, грозит утечкой логинов и паролей, пин-кодов карт при онлайн-оплате, личной переписки. Клавиатуры с функцией шифрования также могут быть скомпрометированы, если узнать, как работает криптография в конкретной модели.
Фальсификация отправителя. Вместо легитимного пользователя можно самим отправить команду на нажатие клавиш мыши или клавиатуры, пользуясь тем, что трансивер не сверяет полученный пакет данных с типом передающего устройства. Таким образом можно:
- открыть консоль, ввести команды удаления всего содержимого компьютера, перезагрузить компьютер и т. п.;
- запустить браузер, ввести адрес инфицированного сайта, перейти по инфицированной ссылке, загрузить на компьютер вирус.
Вывод из строя оборудования. Разновидность атаки MouseJack. Атака на первый взгляд относительно безобидна. Однако мышка и клавиатура могут быть установлены, например, в качестве пульта охраны или использоваться для работы с какими-нибудь критически важными системами.
Методы атаки
Перехват через NRF24. Данный метод не требует серьезных финансовых вложений и знаний в области радиосвязи. По сути, для атаки нужны аппаратная платформа Arduino, чип NRF24 и ноутбук.
В периферийных устройствах Logitech, A4Tech, Microsoft чаще всего используются чипы NRF24 c частотой 2,4 ГГц, а следовательно — для перехвата и клонирования трафика нужен трансивер с аналогичным чипом. В нашем случае был использован чип nRF24L01+ стоимостью 60 рублей в связке с микроконтроллерами Arduino или Raspberry. У nRF24L01+ существует множество клонов, которые можно купить еще дешевле (sigrok.org/wiki/Protocol_decoder:Nrf24l01). Полностью решение обойдется примерно в 300 рублей.
Перехват через SDR. В ходе прошлогоднего исследования MouseJack специалисты Bastille Networks просканировали эфир с помощью чипа NRF24. Экспертам Positive Technologies удалось воспроизвести атаки с фальсификацией устройств и осуществить прослушку как с помощью с NRF24-модуля, так и посредством SDR-трансивера. Последний метод позволяет исключить возню с проводами, программирование Arduino; все что требуется — воткнуть SDR в USB и запустить сканер. Минус в том, что устройство достаточно дорогое: например, HackRF One с доставкой в Россию стоит около 380 долларов.
Результаты наших тестов
Для наших тестов был написан универсальный программный сканер для SDR и NRF24 (github.com/chopengauer/nrf_analyze), который позволяет слушать эфир, находить и с высокой долей вероятности идентифицировать потенциально уязвимые устройства, что в свою очередь позволяет либо перехватывать данные (сниффить), либо имитировать нажатия клавиатуры и клики мышкой, то есть подменять вводимые данные (спуфить).
Атакующий может находиться, скажем, в машине около бизнес-центра или во дворе многоквартирного дома. Дистанция прослушивания трафика может достигать 100 метров, а при использовании направленных антенн и усилителей еще увеличивается. Если цель заключается в подмене данных и выполнении атаки MouseJack, то радиус нападения увеличивается до 0,5?1 км.
В наших тестах были достигнуты следующие результаты:
- Microsoft (клавиатура и мышь) — получилось прослушивать и эмулировать, подменять и отправлять команды, а также осуществить атаку MouseJack;
- A4Tech (мышь) — удалось подменять мышь и переходить на сайты;
- Logitech (клавиатура и мышь) — удалось вывести их из строя.
Как обезопасить себя
У большинства USB-трансиверов нельзя обновить прошивку, поэтому устранить уязвимости невозможно. Является ли ваше устройство уязвимым, можно проверить на сайте mousejack.com. Если для некоторых устройств не опубликованы методы взлома, это не значит, что их нет.
Главный совет — не использовать беспроводные клавиатуры и мыши для ввода конфиденциальных данных (важных паролей, логинов, данных карт). Особенно это касается общественных мест.
Авторы: Артур Гарипов, Павел Новиков
Комментарии (43)
akzhan
07.04.2017 17:18Я приятно удивлен, что в списке устройств нет Apple. Все последние вариации беспроводные.
Iv38
07.04.2017 17:41+1Приятно, что их не протестировали? Так они же блютусные вроде.
akzhan
07.04.2017 19:22https://habrahabr.ru/company/pt/blog/325932/?reply_to=10160730#comment_10160898
Iv38
07.04.2017 19:53Я понимаю. И согласен с тем, что не совсем очевидно какой класс устройств изучался. Просто у блютуса свои механизмы защиты, стандартные. А в данном случае похоже изучались только собственные протоколы разных производителей.
Но я вообще даже больше пытался обратить внимание на то, что радуетесь вы, возможно, напрасно. Apple не попала в список уязвимых, но ее продукцию и не проверяли. Так что уязвима она или нет — неизвестно.akzhan
07.04.2017 20:52Насчет последнего согласен полностью. Когда взломают, будет печально (как мы знаем, нет абсолютной защиты).
Надеюсь только, что до этого уже сменится поколение периферии.SADKO
08.04.2017 00:21-2… там всё тривиально, ничего ломать не надо, надо лишь включить мозг!
Беда в том, что даже если блютусный девайс припасовывается по уму, есть алгоритмы позволяющие докопаться… В большинстве случаев достаточно просто слушать, или на#$%ать и слушать :-)
akagroundhog
07.04.2017 18:04Беспроводные мыши, клавиатуры и трекпады Apple подключаются не по радиоинтерфейсу, а по Bluetooth. Отрадно, что в последнее время и среди других производителей устройств ввода Bluetooth пользуется всё большей популярностью.
ptsecurity
07.04.2017 18:06+3Справедливости ради, Bluetooth тоже может быть небезопасным, мы про это писали здесь:
https://habrahabr.ru/company/pt/blog/246855/
akzhan
07.04.2017 19:22Ни в коей мере не подвергая ваши высказывания сомнению, хотел бы отметить, что
1) заголовок статьи — «Об опасностях беспроводных клавиатур и мышей»
2) Bluetooth работает на радиочастоте.SADKO
08.04.2017 00:14+1И ФАР помогает сечь блютус из далека…
… в реальной работе всё несколько сложнее, чем тут описывается, так например когда в офисе много одинаковых\разных радио свистков это некоторым образом создаёт проблемы стабильности перехвата издалека, и с большим количеством блютус всё тоже не так тривиально как может показаться на первый взгляд. Грубо говоря два и более набора устройств могут использовать одну частоту\таймслот, из-за малой мощьности\чувствительности, по этому удалённым радиослушателям приходится применять специальные меры что-бы эту кашу как-то разобрать…
Помнится ещё в школьные годы, мне удавалось прослушивать обычные ps2 клавиатуры через бытовой приёмник, про SDR я тогда был без понятия, но надо думать что у заинтересованных людей с этим было всё в порядке, всё в порядке и сейчас. (пруфы на выставках спецтехники, для имеющих допуск)
private_tm
07.04.2017 22:45Из SDR в вашем тесте использовалось именно HackRF One? или что то другое? Подойдет ли RTL2832U+R820T2(дешевый вариант SDR за 400 руб).
ptsecurity
08.04.2017 01:19Можно использовать любое sdr. Единственное условие-работа в необходимом диапазоне частот (2.4GHz -2.525GHz). Для этих целей RTL-SDR «из коробки» не подойдёт. Ее можно использовать вместе с downconverter-ом (понижающий конвертер).
slickstars
07.04.2017 22:45А как использовать исходники, чтобы проверить это? Или заранее не предполагалась инструкция «для всех» по пользованию исзодников?
TimeCoder
08.04.2017 06:41-2Касательно перехвата паролей — еще один повод использовать KeePass.
surefire
08.04.2017 10:59-1Вы забыли, что keepass тоже нужно разблокировать паролем с той же самой клавиатуры.
TimeCoder
08.04.2017 13:36-2Если мы рассматриваем перехват нажатий, то вору мастер-пароль ничего не даст, файл базы-то он как получит? К тому же, я, например, KeePass вообще не выключваю (часто использую), у меня неделями ноут не перезагужается (только sleep), поэтому мастер-пароль я редко ввожу (вероятность перехвата падает).
surefire
08.04.2017 13:41файл базы-то он как получит?
Имя доступ к клавиатуре, заполучить какой либо файл не слишком сложная задача.
Spewow
08.04.2017 11:14+2Исследуйте популярные принтеры с функцией wi-fi direct, включаешь бывало wifi сканер, а там кучи всяких hp в эфир фонят, на борту там зачастую обрезок linux, ну а вторым концом принтер прицеплен прямо в корпоративную сеть.
Стараемся вырубать эту функцию в принтерах, так сказать во избежание :)
schastny
08.04.2017 13:39Привет, Артур! ) Спасибо, что подняли данную тему. По сути вопроса. Беспроводные каналы связи всегда уязвимы к атакам типа MiTM. Это итак было понятно. Просто хорошо что затронули вообще эту тему, подняли её на обсуждение и провели тест в реальных условиях, т.е. выполнили практическую реализацию такого перехвата.
tyamur
08.04.2017 13:57А как приёмники отличают одну мышь от другой? что то типа мак адреса?
LampTester
09.04.2017 11:30Если говорить конкретно о nRF24L01+, то, в принципе, она поддерживает адресацию (в режиме enahnced ShockBurst). Можно разделять по адресу, можно разделять по частотному каналу.
Gordon01
08.04.2017 14:41ощущение, будто одну и ту же статью про взлом клавиатур на nrf24 перепечатывают все кому не лень. стойкое ощущение, что читаю это уже раз пятый
Leonso
09.04.2017 21:04Спасибо за интересную статью. Я и не знал, что использование беспроводной мышки хранит в себе столько опасностей!
AndrewTishkin
12.04.2017 09:08Более того, за проводными мышками и клавиатурами тоже можно шпионить.
https://lenta.ru/news/2008/10/21/kbrd/
Как страшно жить. ©
atrosinenko
10.04.2017 10:13Если я правильно понял, устройства Logitech изначально были уязвимы, а потом они выпустили обновление прошивки. Не гарантирую, что это официальный ответ, но цифровые подписи были.
timda
11.04.2017 10:51-1У меня есть большие опасения за людей кто пишет такие статьи, и за людей кто читает такие статьи и кто подвержен интернет-фобиям.
Задача данной статьи — напугать пользователей.
Такую манеру изложения материала я назвал бы так: насрали и сбежали.
Таких людей большинство, причем люди не задумываются о том, что говорят. Лишь бы сказать! Это тенденция от окружающего мира, от наших СМИ. Мои друзья периодически получают от меня реверс на такие заявления, после чего, подумав, говорят — «действительно, чего я все ругаюсь, не предлагая пути решения задачи». Хотя, думаю, и сам грешен :)nail333
11.04.2017 13:18+1Ну я, например, зашел на указанный в статье сайт и нашел там обновление прошивки для приемника Logitech Unifying, которое теоретически должно закрыть уязвимость для него. Так что хотя бы для некоторых устройств решение есть — уже хорошо. И спасибо авторам статьи за предупреждение.
kapioprok
11.04.2017 13:18Донглы не сверяют тип полученной команды с типом передающего устройства и в результате, они спокойно принимают команды на нажатие клавиш от устройства мыши.
leon76
11.04.2017 21:56Спасибо за статью, обновил прошивку у себя в Unifying dongle (USB ID 046d:c52b) до 012.007.00029 в ней дырки закрыты.
GennPen
А у проводных не меньше проблем с безопасностью, что мешает подцепить логгер? Не известно же куда и через что там провод идет.
ptsecurity
В статье речь идет не об общественных компьютерах, а об общественных *местах*. Компьютер у вас может быть свой, и беспроводная клава своя. И вы можете со страшной силой сжимать ее в руках, так что никто ее не сопрёт.
Но если вы при этом сидите на вокзале, то сидящий в соседнем зале пассажир может читать всё, что вы набираете.
ZimM
Простите, в соседнем зале? Мои мышка и клавиатура перестают работать уже через несколько метров от приемника…
ptsecurity
Дистанция работы вашего приемника и дистанция прослушивания (т.е. приемника атакующего) могут быть разные.
Iv38
Потому что у них приемник слабый. А злоумышленник может иметь мощную антенну и хорошее усиление.
ProLimit
Усиление тут не при чем — ведь усиливается и весь мусор, который засоряет эфир вокруг, и при маломощном передатчике уже на небольшом расстоянии сигнал потонет в шуме. А вот узконаправленная антенна может серьезно увеличить дистанцию перехвата.
elvisfox
Усиление тоже при чем — у приемника есть еще собственный шум, который, простыми словами, тем больше, чем меньше потребляет приемник (спасибо, физика). Так что маломощный свисток, где энергопотребление оптимизировано, чтобы не садить батарейку ноутбука, однозначно проиграет.
ivan386
У взломщика может быть антена покруче встроенной в свисток.
Jump
А стоящий за спиной злоумышленник может не только читать что вы набираете, но и видеть, что вам отвечают.
Так что вывод информации на экран даже более опасен чем беспроводная клавиатура в плане утечки информации.
А еще его могут вывести из строя направив яркий сфокусированный луч прямо на экран.
LynXzp
Лазером по монитору? Прямо хакер в столовой.
monah_tuk
на вокзале с беспроводной клавиатурой? а мышка… посылки в относительных смещениях, даже спрогнозировать куда клик идёт сложно. Пароли жестами? Нужно тогда может быть.
erty
Просто придя в любую фирму и посидев на ресепшене пол часика можно заснифать все коды, что вводятся в ИТ-отделе неподалеку. Войти же в кабинет и повесить логгер на клаву будет «чуточку» труднее.