Охота за Голубым Зубом

Автор: (c)Крис Касперски ака мыщъх

Голубой зуб наступает! Поголовье Bluetooth-устройств стремительно нарастает, обрушиваясь на рынок снежной лавиной. Реклама утверждает, что протокол передачи данных надежно защищен, но эта защита легко расстреливается снайперской винтовкой с расстояния в несколько километров. Хакеры уже давно ломают голубые зубья и эта статья рассказывает, как.

Джон Херинг

Рисунок 1. Джон Херинг (John Hering) - известный охотник за Голубым Зубом с ружьем BlueSniper, позволяющим сканировать и взламывать Голубые Зубья в радиусе нескольких километров. Первая версия этого ружья была представлена на хакерской конференции Defcon 2004.

Введение

Голубым зубом (Bluetooth) оснащаются сотовые телефоны, наладонники, ноутбуки и многие другие мобильные устройства, что делает его заманчивым объектом для взлома. Хакер может осуществлять несанкционированное подключение к устройству, перехватывать трафик, отслеживать перемещение жертвы в пространстве или устраивать полный DoS. Уже зафиксировано несколько случаев взлома влиятельных лиц и с каждым днем интенсивность хакеров все растет и растет. Разработчики Голубого Зуба делают морду тяпкой и сваливают всю ответственность на производителей оборудования, которые где-то что-то криво реализовали. Производители в свою очередь наезжают на пользователей, выбирающих предсказуемые PIN'ы, не выключающих Голубой Зуб после каждого сеанса передачи и т.д. Короче, виноватых не найдешь, а между тем количество Bluetooth-устройств уже исчисляется сотнями миллионов(!) и все говорит о том, что несколько последующих лет пройдут под знаменем Голубого Зуба, реальных конкурентов которому пока не видно.

На Голубом Зубе собираются домашние и мелкие корпоративные локальные сети, Голубой Зуб встраивается в клавиатуры, мыши, принтеры, часы и даже... системы управления автомобилем. А вот это уже серьезно! Зверски спланированная операция может привести не только к утечке конфиденциальных данных, но и к человеческим жертвам. Эта статья не призывает ничего ломать, я просто хотел показать, насколько небезопасен Голубой Зуб, а доверять ему или нет - пусть каждый решает сам!

Вездесущий Голубой Зуб

Рисунок 2. Вездесущий Голубой Зуб.

Что в имени твоем?

Общепринятая практика перевода Bluetooth "Голубым Зубом" выглядит довольно странной, если не сказать - подозрительной. В качестве оправдания приводится король викингов Harald Blutend, якобы получивший свое прозвище из-за потемневшего переднего зуба и воссоединившего Данию и Норвегию. Дескать, произношение его имени созвучно с Bluetooth'ом, в честь которого он и был назван.

Легендарный хакер Юрий Харон предлагает свою версию перевода, которая мне кажется наиболее близкой к истине (если, конечно, допустить, что истина вообще есть). Blue - на жаргоне электронщиков означает "легкий", "простой", а tooth - "сцепка", "зацепление". Соединив все вместе, получаем: "Легкая сцепка", "Простая Связь". Логично?

Что такое "голубой зуб"?

Голубой Зуб представляет собой устройство, работающее в диапазоне частот от 2.400 до 2.483,5 МГц (а вовсе не 2,4 МГц как думают некоторые!). На этой же частоте работают микроволновые печи, беспроводные сети стандарта 802.11b/g, радиотелефоны и многие другие устройства, агрессивно конфликтующие между собой. Для решения этой проблемы, Голубой Зуб использует специальный алгоритм скачкообразной перестройки частоты. Весь частотный диапазон "нарезается" на 79 каналов с шириной в 1 МГц и каждые 625 мкс (1.600 раз в секунду) происходит смена канала, выбираемого по псевдослучайному принципу. Каждая такая порция вещания образует time-slot (тайм-слот), для простоты называемый слотом. Передаваемые данные разбиваются на пакеты по 2.745 бит, каждый из которых "размазывается" по нескольким тайм-слотам (до 5 слотов максимум).

Устройства взаимодействуют по схеме master-slave (хозяин-раб или ведомое и ведущее устройство). Один мастер может иметь до семи рабов, мастер вещает в четных слотах, а рабы - в нечетных.

Поддерживаются два типа связи: асинхронный (ACL - asynchronous connectionless) и синхронный (SCO - synchronous connection oriented). Синхронный режим преимущественно используется для передачи речи, асинхронный - для обмена данными.

Расчетная пропускная способность канала в асинхронном режиме составляет 1 Мбит/с, при этом заголовки и другая служебная информация "съедают" 20% трафика, оставляя нам ~820 Кбит/с, однако на практике все зависит от условий связи и конструктивных особенностей конкретного передатчика. Ведомое и ведущее устройство могут иметь только один канал (link) асинхронной связи, организованный по схеме точка-точка (point-to-point) или работающий в широковещательном режиме (broadcast), причем без разрешения хозяина раб не может переходить на асинхронный тип передачи.

В синхронном режиме связи мастер может поддерживать до трех каналов с одним, двумя или тремя ведомыми устройствами, с расчетной пропускной способностью каждого канала в 64 Кбит/с. Вещание ведется в слотах, назначаемых мастером. Слоты, не используемые в синхронном режиме, могут использоваться в асинхронном.

Предельно допустимая мощность передатчика по спецификациям должна составлять 10 мВт, что обеспечивает устойчивую работу в радиусе 10 - 25 метров.

Схематичное изображение протокола передачи

Рисунок 3. Схематичное изображение протокола передачи.

Снайперская антенна

Для охоты за Голубым Зубом необходимо увеличить радиус действия устройства хотя бы до сотни метров. Это легко! Достаточно разобрать адаптер, найти медную дорожку, изогнутую сексуальной буковкой "П", и припаять к ней провод от внешней антенны на 2.4 ГГц, позаимствованной у WLAN-устройств.

Адаптер Голубого Зуба

Рисунок 4. Адаптер Голубого Зуба.

Подключение внешней антенны

Рисунок 5. Подключение внешней антенны.

Однако для серьезной атаки дистанции в сотню метров явно недостаточна и настоящие охотники обзаводятся узконаправленными антеннами типа randome или parabolic. Ими торгуют многие компании, например, HyperLink Technology или MAXRAD. Оформить заказ можно по Интернету. Хорошая антенна стоит в пределах полусотни долларов плюс пересылка и растаможка.

Внешний вид антенны HG2415Y

Рисунок 6. Внешний вид антенны HG2415Y типа Randome от HyperLink Technology.

Наибольшей популярностью пользуется модель HG2415Y от HyperLink Technology с коэффициентом усиления 14 dB и подходящей диаграммой направленности. Компактные габариты (462 x 76 мм) позволяют уложить антенну в спортивную сумку или рюкзак, скрывающий ее от посторонних глаз и не привлекающий внимания посторонних.

Диаграмма направленности антенны HG2415Y

Рисунок 7. Диаграмма направленности антенны HG2415Y.

Для удобства "прицеливания" (а попасть в Голубой Зуб при такой диаграмме направленности не так-то легко!), многие хакеры насаживают антенну на фотографический штатив, приделывают к ней приклад и оптический прицел, в результате чего получается самое настоящее радио-ружье с поражающим действием в один километр.

Антенна HG2415Y, превращенная в снайперское радио

Рисунок 8. Антенна HG2415Y, превращенная в снайперское радио-ружье.

Еще одно радио-ружье

Рисунок 9. Еще одно радио-ружье.

Из параболических антенн хотелось бы порекомендовать HG2424G все от той же HyperLink Technology. Коэффициент усиления в 24 dB выше всяких похвал. Острая диаграмма направленности бьет Голубой Зуб за несколько километров, однако неуклюжие габариты (100 x 60 см) существенно затрудняют ее транспортировку, а чрезмерная узконаправленность создает проблемы прицеливания, особенно актуальные при слежении за быстродвижущейся жертвой, так что во многих случаях HG2415Y все же оказывается предпочтительнее.

Внешний вид параболической антенны HG2415Y

Рисунок 10. Внешний вид параболической антенны HG2415Y от HyperLink Technology.

Диаграмма направленности антенны HG2415Y

Рисунок 11. Диаграмма направленности антенны HG2415Y.

Полутораметровая параболическая антенна HG2430D с усилением в 30 dB обойдется уже в 300 долларов. Стоит ли она того? Для охоты с балкона на стационарные мишени (например, правительственное здание) несомненно - да, а вот для полевой охоты она слишком громоздка и неудобна.

Полезные ссылки по антенному вопросу

Авторизация и аутентификация

Голубой Зуб поддерживает несколько режимов секретности: Security Mode 1 (nonsecure - открытый), Security Mode 2 (Service-level enforced security - секретность уровня сервиса) и Security Mode 3 (Link-level enforced security - секретность уровня канала).

В mode 1 все системы защиты выключены, не используется ни аутентификация, ни шифрование, а само Bluetooth-устройство работает в широковещательном режиме (он же "неразборчивый" - promiscuous), что делает возможным построение снифферов из доступных компонентов.

В mode 2 сразу же после установки соединения начинается процесс аутентификации, осуществляемый по L2CAP-протоколу (Logical Link Control and Adaptation Protocol - Протокол Управления Логическим Каналов и Адаптации) и выполняемый Менеджером Безопасности (Security Manager), находящимся на канальном уровне и взаимодействующим с протоколами верхних уровней. Это позволяет выборочно ограничивать доступ к устройству - например, все могут просматривать данные, но не все изменять их.

В mode 3 аутентификация происходит перед установкой соединения на канальном уровне, за счет чего все "левые" устройства будет отшиты еще на этапе подключения. Поддерживается "прозрачное" шифрование трафика, выполняемое без участия протоколов верхнего уровня, что обеспечивает максимальный уровень безопасности и комфорта, однако даже в этом случае степень защиты относительно невелика и устройство может быть легко взломано.

Фундаментом безопасности является схема генерации ключей. Ключи генерируются на основе PIN-кодов. PIN-код представляет собой персональный идентификационный номер от 1 до 16 байт длиной, назначаемый владельцем устройства, и хранимый в энергонезависимой памяти. Большинство мобильный устройств используют 4х-значный (32-битный) PIN-код, по умолчанию выставленный в ноль. Некоторые устройства отказываются работать с нулевым PIN'ом, вынуждая пользователей изменять его на "1234" или что-то в этом роде. Но ломать такие PIN'ы неинтересно. Это все равно, что расстреливать кабана, привязанного к дереву.

На основе PIN-кода генерируется 128-битный Link Key, вычисляемый по E2 алгоритму. В свою очередь, на основе Link Key'я генерируется 128-битный Encryption Key, вычисляемый по алгоритму E3. Link Key используется для аутентификации, а Encryption Key - для шифрования трафика.

Генерация секретных ключей

Рисунок 12. Генерация секретных ключей на основе PIN-кода.

Аутентификация осуществляется по классической схеме запрос - отклик, такой же древней как сам компьютерный мир (регистрация пользователя в UNIX и Windows NT построена на тех же принципах).

Процесс аутентификации

Рисунок 13. Процесс аутентификации.

Таким образом, в открытом виде PIN-код не передается и поэтому не может быть перехвачен! Однако, он может быть подобран. В самом деле, мы можем перехватить BD_ADDR, AU_RAND и SRES, после чего нам остается всего лишь подобрать такой Link Key, который бы при данных BD_ADDR и AU_RAND давал бы идентичный SRES. Даже если используется 128-битный PIN, полный перебор на Pentium-4 занимает всего лишь несколько часов, а 4-символный PIN взламывается практически мгновенно!

Ссылки по алгоритмам шифрования

Методы атаки

Три наиболее распространённых типа атаки на Голубой Зуб - это Bluetracking, Bluesnarfing, и Bluebugging.

Атаки типа Bluetracking основаны на том, что адрес устройства BD_ADDR передается в сеть в незашифрованном виде и может быть легко перехвачен и декодирован. Хакер может определить производителя устройства, модель и ее происхождение. Группа хакеров, рассредоточенных по городу и вооруженных антеннами типа randome, без труда отслеживает перемещение жертвы со всеми вытекающими последствиями.

Серия нашумевших атак типа Bluesnarfing все еще овеяна ореолом загадочности. Под изумленные взгляды окружающих хакеры вытягивают с сотовых телефонов записные книжки, содержимое адресной книги, архив SMS-сообщений и другую приватную информацию. Черт возьми, как?! Хакеры улыбаются, но не отвечают. Разработчики Голубого Зуба подтверждают возможность атаки (http://www.bluetooth.com/help/security.asp), но технических деталей не разглашают. Еще бы! Во многих мобильных устройствах служба обмена объектами (Object Exchange - OBEX) работает в non-secure режиме, не требуя никакой аутентификации! Этим, в частности, грешат сотовые телефоны от Nokia, Ericsson и Sony Ericsson (в особенности модели T68, T68i, R520m, T610 и Z1010), Nokia (модели 6310, 6310i, 8910 и 8910i) и Motorola (V80, V5xx, V6xx and E398), а Siemens всегда работает в защищенном режиме.

Атаки типа Bluebugging (также называемые Blue Bug) представляют собой разновидность Bluesnarfing-атак, но теперь вместо обмена объектов происходит засылка AT-команд по все тому же OBEX-протоколу. AT-команды - это обыкновенные коммуникационные команды, знакомые любому модемщику. С их помощью можно отправлять SMS-сообщения, совершать голосовые звонки за счет жертвы и даже выходить в Интернет по WAP/GPRS протоколам. И все это безо всякой аутентификации! Короче, Blue Bug - это серьезно, так что владельцам неблагонадежных сотовых телефонов лучше всего держать Голубой Зуб выключенным.

Наконец, даже полностью защищенные телефоны типа того же Siemens'а могут быть взломаны лобовым перебором. Как уже отмечалось, 4-значный PIN вскрывается за несколько секунд и даже если в будущих моделях производители увеличат длину PIN-кода до 16-байт, это не остановит взломщиков и сильно усложнит жизнь пользователей. Такой PIN запомнит далеко не каждый, а это значит, что повсеместно будут использоваться осмысленные "словарные" номера, существенно упрощающие их перебор.

Всего же существует более двух десятков типов атак, которые было бы слишком утомительно описывать здесь. Тот, кто хочет узнать больше, может обратиться к замечательной книге "Wireless Network Security" и другим подобным документам.

Ссылки по теме взлома

Чем ломать

Хачить Голубой Зуб лучше всего под Линухом, открытая архитектура которого позволяет использовать уже готовые компоненты и содержит кучу полезных утилит, которые можно использовать для сканирования или Bluesnarfing атаки. Например, hciconfig, запущенную с ключом "-ifconfig" или hcitool cо следующими ключами: Scan - просканировать периметр и распечатать список обнаруженных Bluetooth-устройств; Name - возвратить имя удаленного устройства, Cmd - управление локальным Голубым Зубом по HCI-интерфейсу, Cc - создать подключение. Подробное разъяснение всех команд содержится в man'е.

Сканирование Bluetooth-устройств

Рисунок 14. Сканирование Bluetooth-устройств утилитой hcitool.

Стек протоколов Голубого Зуба

Рисунок 15. Стек протоколов Голубого Зуба.

До HCI-интерфейса можно дотянуться через Ioctl-коды или опции сокетов. Команды, отвечающие за это, имеют характерный префикс HCI. К их числу принадлежат HCI_Create_New_Unit_Key, HCI_Read_Pin_Type, HCI_Read_Authentication_Enable, HCI_Read_Encryption_Mode, HCI_Change_Local_Link_Key, HCI_Master_Link_Key и многие другие.

Ссылки по программированию Голубого Зуба

Ошибка переполнения в WIDCOMM

Создатели Голубого Зуба предлагают готовое программное обеспечение для его поддержки, так называемое "распространяемое под торговой маркой WIDCOMM" (Wireless Internet and Data/Voice Communications - Беспроводной Интернет и Коммуникации для передачи Голоса и Данных), что избавляет производителей оборудования реализовывать весь стек протоколов самостоятельно. Программисты старой школы (к которым принадлежит и Юрий Харон) хорошо знают истинную цену решений из "пробирки". Обжегшись на чужих ошибках пару раз, они не доверяют никакому коду, кроме своего собственного. И ведь не зря!

В августе 2004 года в WIDCOMM'е было обнаружено тривиальное переполнение буфера, позволяющее захватывать управление устройством простой посылкой специально подготовленного пакета. Никакой PIN для этого подбирать не нужно!.

Уязвимость затрагивает BTStackServer версии 1.3.2.7, 1.4.1.03 и 1.4.2.10, используемые в Windows 98, Windows XP, Windows CE и др. Кроме этого, WIDCOMM используется многими компаниями: Logitech, Samsung, Sony, Texas Instruments, Compaq, Dell... полный перечень включает в себя более трех десятков наименований. Все Bluetooth-устройства, производимые этими компаниями, находятся под угрозой и в любой момент могут быть атакованы. Для популярного наладонника HP IPAQ 5450 даже написан специальный эксплоит! В некоторых случаях, проблема решается установкой всех заплаток или сменой прошивки, некоторые же устройства остаются открытыми до сих пор.

Подробности можно найти здесь: http://www.pentest.co.uk/documents/ptl-2004-03.html.

Заключение

Взлом Голубого Зуба - это не фантастика! Это - реальность, доступная каждому из нас! Есть такой вид радиоспорта - охота на Лис. В укромном месте закладывается передатчик (лиса), который пытаются запеленговать вооруженные приемниками радиолюбители. Кто первый его обнаружит - тот и победил. По аналогии с этим, дистанционный взлом Голубого Зуба был прозван Охотой на Кур - беззащитный пользователей, трепещущих под снайперским радиоружьем словно желторотые птенцы.

Это азартно и интересно. Это захватывает и не отпускает. Подстрелив свою первую дичь, хочется стрелять еще и еще. Здесь и долгое сидение в засаде, и предварительная техническая подготовка, и тщательно отлаженная экипировка, которая ни за что не подведет и, конечно же, чувство справедливого восторга хищника, набрасывающегося на ничего не подозревающую добычу.