Bluetooth (BT) – беспроводная технология, позволяющая широкому ряду устройств взаимодействовать друг с другом и соединяться с сетью Internet без проводов, кабелей и разъемов. Эта технология поддерживается и используется более чем 3000 компаниями, включая Sony Ericsson, Nokia, Motorola, Intel, IBM, Toshiba, Motorola, Apple, Microsoft, и даже Toyota, Lexus и BMW. Из множества продуктов, доступных на рынке, технологию Bluetooth поддерживают принтеры, карманные компьютеры, клавиатуры, автомобили и - самая популярная область применения Bluetooth - мобильные телефоны, охватывающая 60% рынка Bluetooth устройств. Эта технология уже завоевала огромную популярность (каждую неделю выпускаются более чем 3 – миллиона устройств с поддержкой Bluetooth). По опросу IDC к 2008 году во всем мире будет около 922 миллиона Bluetooth – устройств. Новая технология представляет большой интерес и пользу до тех пор, пока не появится угроза в плане частной жизни и безопасности пользователей Bluetooth.
Идея о внедрении Bluetooth возникла в 1994 году, когда команда исследователей Ericsson Mobile Communications под руководством доктора Jaap Haartsen и доктора Sven Mattisson положили начало изучению универсальной, действующей в узком диапазоне, маломощной беспроводной технологии связи с целью экономии кабелей между мобильными телефонами и компьютерами, наушниками и другими устройствами. Bluetooth, который мы знаем сегодня, развился благодаря Bluetooth Special Interest Group (SIG) – промышленной ассоциации, появившейся в мае 1998 года и официально открывшейся в сентябре 1998 года. Позднее к Bluetooth SIG примкнули Ericsson, IBM, Intel, Nokia и Toshiba, позже в декабре 1999 - 3Com Corporation, Lucent Technologies, Microsoft Corporation и Motorola Inc. После нескольких лет исследований Bluetooth использует свободную и доступную Industrial-Scientific-Medical (ISM) радио частоту 2.4ГГц, не требующей лицензирования для использования устройств малой мощности в радиусе действия от 10 до 100 метров при скорости передачи данных до 723.2 кб/сек, или 2.1Мб/сек с новой спецификацией Расширенной Передачи Данных (Enhanced Data Rate), которая появилась в 2005 году. Каждое устройство может одновременно обмениваться данными с семью другими в радиусе действия пикосети.
Bluetooth был изначально запланирован как безопасный вид связи. Т.е. он включал в себя аутентификацию, шифрование, контроль качества обслуживания (quality of service - QoS) и другие функции зашиты. Как бы то ни было, в этой статье будет показано, что Bluetooth в ряде случаев уязвим, в результате чего злоумышленник уже сейчас может провести успешное нападение против Bluetooth устройств.
Возможности безопасности Bluetooth
Самая известная и основная функция механизма безопасности Bluetooth – это возможность выбрать состояние устройства: «Видимый» (другим устройствам) и «Невидимый» ("Discoverable" "non-discoverable"), как показано на примере с карманным компьютером на рисунке 1.
Когда устройство Bluetooth работает в режиме «Видимый», то можно легко произвести сканирование радиуса и найти это устройство при помощи PC и загрузить личные данные. Как это сделать мы покажем ниже. Этот метод может легко использоваться для кражи персональных данных высокопоставленных людей и знаменитостей, которые чаще всего не понимают технологии Bluetooth.
Установка Bluetooth в режим «Невидимый» предотвращает появление устройства ВТ в списке сканирования. Однако его все еще могут обнаружить устройства с похожими Bluetooth МАС адресами, что может быть последствием предыдущего контакта двух устройств (имеются в виду устройства, которые взаимодействовали хотя бы один раз).
Теоретически, задействовав режим «Невидимый», устройство ВТ должно быть защищено от неавторизованных соединений, но на практике возможно осуществить поиск таких устройств. Существует программное обеспечение, позволяющее искать «Невидимые» ВТ по брут - форсу. Примером такого ПО можно назвать программу RedFang, выпущенную Ollie Whitehouse. Это маленькое приложение пытается соединиться со случайными ВТ адресам по одному, пока какое-нибудь устройство не ответит на запрос, посланный на его адрес. К сожалению, этот прием пока что является только РоС, чем серьезным инструментом взломщика. Главное препятствие осуществления такого приема брут – форса это время, которое тратится на попытку соединения с одним ВТ. По тестам автора это время составляет как минимум 6 секунд для достижения хорошего качества соединения (на самом деле это время варьируется от 2.5 до 10 секунд). Конечно, можно найти «Невидимку» и за 3 секунды, но скорее всего потеряв некоторые устройства, что в последствии повлияет на результаты сканирования не в лучшую сторону. Чтобы представить это более наглядно, давайте посмотрим на четкие цифры. Адресное пространство, используемое Sony Ericsson, имеет 16 777 216 возможных адресов. Умножим эту цифру на 6 секунд (которые требуются для попытки соединения на одно устройство), то полное сканирование займет 1165 дней, то есть чтобы найти все спрятанные устройства Sony Ericsson в комнате совещаний нам потребуется более 3 дет. Из всего этого следует, что этот прием бесполезен для злоумышленника, т.к. занимает слишком много времени. Однако уже сейчас есть методы поиска «Невидимого» ВТ значительно быстрее.
У большинства устройств ВТ (почти все сейчас – мобильные телефоны) есть яркий голубой светодиод, показывающий включена ли на телефоне функция ВТ. Если хакер видит мобильник с большим голубым диодом и не может найти его при помощи стандартного средства поиска ВТ, то он поймет, что устройство работает в невидимом режиме. Основываясь на этом, злоумышленник будет знать, что на этом устройстве работает ВТ, а если будет видеть его, то наверняка сможет узнать модель телефона – после чего сможет провести брут – форс на адреса ВТ и сделает процесс поиска гораздо проще.
Уменьшение числа возможных адресов
Прежде всего, если производитель устройства известен, то количество возможных ВТ адресов строго ограничено до 16 777 216. Более того, основываясь на начальных исследованиях, некоторые производители устройств ВТ присваивают вполне предсказуемые диапазоны адресов определенным моделям. Например, адреса большинства моделей Sony Ericsson P900 начинаются с 7 знаков 00:0A9:E, в результате чего остается только 5 неизвестных знаков адреса, что во много раз уменьшает количество необходимых запросов с более чем 16 миллионов до 1 048 576. Ко всему этому четвертый байт адреса модели SE P900 в большинстве случаев находится в диапазоне E7-EE, что уменьшает число возможных адресов до 524 288. Это означает, что, при поиске одного адреса в течение 6 секунд, полное сканирование займет уже 36 дней. Согласитесь, это намного меньше, чем полное сканирование адресов Sony Ericsson, которое может занять 1165 дней. Но 36 дней – слишком большой период, чтобы данный метод был полезен для хакеров. В настоящее время не существует базы диапазона адресов для каждой модели. Например, большинство трубок Nokia имеют имеют практически случайный разброс BT адресов, тогда как у некоторых моделей Р900 были обнаружены одинаковые адреса 11:11:11:50:11:11!
Время, необходимое для полного сканирования адресов ВТ может быть сокращено не только при помощи четкого определения диапазона адресов, а также при помощи увеличения скорости сканирования. Текущая версия программы RedFang (v.2.5) предоставляет возможность совместного использования заглушек ВТ в процессе поиска. Если мы используем только 8 USB ВТ заглушек и можем получить преимущество от выше упомянутого диапазона адресов трубок Sony Ericsson P900, то мы сможем найти все «Невидимые» SE P900 в течение четырех с половиной дней. Неплохо, но это все еще слишком долго. Не стоит забывать, что изучение ВТ является относительно новым направлением, и в скором времени могут быть разработаны новые методы взлома и инструменты сканирования.
Узнаем адрес Bluetooth в процессе соединения
Адрес Bluetooth также может быть извлечен в процессе соединения, т.к. сам адрес не зашифрован, даже если пользователь выбирает режим шифрования соединения. Это и является самой важной проблемой у текущей спецификации Bluetooth. Скачкообразная перестройка частоты (1600 скачков/сек) предоставляет основную защиту устройствам ВТ при работе в режиме без шифрования. Как бы то ни было, скачкообразная перестройка частоты, используемая в ВТ, является псевдослучайной, а значит хакер, имея необходимое оборудование, сможет выполнить синхронизацию с моделью перестройки, используемой двумя ВТ во время соединения. Кроме того, последовательность скачков распространяется на все устройства пикосети, что может также помочь злоумышленнику. Стоит заметить, что уже сегодня на рынке доступны устройства, позволяющие перехватывать соединения ВТ и анализировать их (приблизительная цена такого устройства составляет $9500), пока что только цена смущает приобрести такие устройства большинству взломщиков.
Особенно злонамеренные взломщики могут получить преимущество от владельцев телефонов, которые используют свои трубки с включенным ВТ в «Видимом» режиме. Такое случается довольно часто, т.к. для начала паринга одна из трубок должна быть в «Видимом» режиме (процесс паринга будет описан в следующем разделе). Иногда пользователи просто забывают отключить этот режим, хотя это очень легко сделать. Или, что более вероятно, просто не понимают что вообще такое «Видимый» режим.
Необходимость устройства находится в «Видимом» режиме в процессе паринга с другим устройством ВТ является на самом деле очень полезным для взломщиков, ведь они могут успеть за этот короткий промежуток времени записать адрес. Ни одна модель трубок, доступных на данный момент в магазинах не позволяет вводить адреса вручную для паринга, это и объясняет необходимость одного устройства в «Видимом» режиме. Следуя из того, что ВТ адрес статический и не может быть изменен пользователем, то атакующему нужно записать адрес всего лишь один раз. Из этого ясно, что хакеру достаточно одного короткого промежутка времени в «Видимом» режиме, чтобы соединиться с устройством до того, как его переключат в «Невидимый» режим, причем пользователь трубки не сможет блокировать соединение. Это происходит из-за того, что мобильные телефоны всегда принимают соединение о запросе L2CAP без разрешения пользователя. К сожалению, на сегодняшний день мобильные устройства не обеспечиваются функцией ограничения низкоуровневого соединения L2CAP к устройству ВТ или блокирования отдельного адреса. Короче говоря, ВТ – фаервол попросту недоступен по умолчанию.
Методы паринга и защиты ВТ
Распространенная задача, которой ломают головы большинство пользователей ВТ это защита паринга устройств. По умолчанию соединение ВТ не поддерживает аутентификацию, вследствие чего, почти любое устройство может соединиться с другим. Однако, чтобы получить доступ к какому-либо сервису, например: dial-up акаунт, голосовая почта или чтобы осуществить пересылку файла, некоторый вид аутентификации все же необходим. Процесс аутентификации во время паринга обычно заключается в вводе PIN – кодов (паролей) на обоих устройствах, как показано на рисунке 2.
Рисунок 2. Пример аутентификации в процессе паринга ВТ
С момента ввода правильных PIN – кодов, оба устройства будут генерировать ключ связи, который может быть сохранен в памяти устройства и позволит пропустить процесс аутентификации при следующей попытке соединения с уже парным устройством.
Проблемы производителей
К сожалению пользователей ВТ, процесс аутентификации и авторизации для доступа к сервисам не всегда корректно осуществлен изготовителем. Эти недостатки были найдены в некоторых моделях трубок от Sony Ericsson и Nokia, что позволяет злоумышленнику выкрасть телефонные книги, фотографии и информацию из календаря (органайзера), или даже позволит хакеру сделать звонок или послать sms, используя чужую трубку. Все это из-за недостатка авторизации, необходимой для 2 важных сервисов.
Чтобы осознать опасность уязвимости, просто представьте, что с вашей трубки послали sms содержанием об угрозе взрыва бомбы в местном отделении милиции. Записи билинговой системы укажут именно на вас, как на владельца телефона и автора сообщения, и наверняка будет невозможно узнать настоящего автора sms, т.к. мобильные телефоны не ведут записей об использовании ВТ. Хуже того, значительное большинство телефонов даже не сохраняют копию sms, посланного через ВТ АТ – команды. В конечном счете, вы даже не заметите, что с вашего телефона послали sms, а если и узнаете, то только после того, как получите отчет об отправке (и то если эта функция включена).
Производители уже выпустили обновление, но простое сканирование легко находит уязвимые трубки, к примеру, в вашем местном магазине. Не удивителен факт, что большинство неопытных пользователей, которым нужно лишь посылать sms и делать звонки, даже не задумываются о том, что программное обеспечение их телефона нужно периодически обновлять. Все же удивительно видеть устройства с такими дефектами сегодня на рынке.
Опасность поддельного АР
Процесс паринга осуществлен в большинстве телефонов таким образом, что ведет за собой еще одну опасность. Список найденных устройств ВТ на мобильном телефоне отображается только в виде имен, но не показывает действительный ВТ адрес, как показано на рисунке 3.
Рисунок 3. Найденные устройства не отображают свой ВТ адрес.
Всвязи с тем, что имя устройства (как «ULTOR» вверху окна) может быть легко присвоено любым пользователем, и это имя не должно использоваться как единственный идентификатор в процессе паринга; ВТ адрес должен отображаться и проходить дополнительную проверку. Эта незначительная на первый взгляд деталь может быть использована во многих случаях, особенно в общедоступных сервисах, доступных через ВТ. Например, точка доступа в Интернет через ВТ может быть атакована путем установки ложной точки доступа. Устройство может иметь то же самое имя, что и подлинная точка доступа, и может быть сконфигурирована для принятия того же PIN’a и даже предоставить доступ в Интернет. Однако все данные во время соединения будут перехвачены и проанализированы на наличие паролей и другой важной информации.
Эта атака может быть осуществлена и другим путем. В некоторых странах существуют мобильные киоски, которые могут послать мелодию звонка или игру на трубку через ВТ. Когда пользователь выбрал содержимое для закачки на свою трубку и видит в списке ВТ устройств что-то типа «MOBILE-KIOSK», это самое устройство с именем «MOBILE-KIOSK» соединяется с трубкой пользователя и посылает игру. Проблема в том, что мы не знаем, действительно ли устройство с именем «MOBILE-KIOSK» тот самый киоск, к которому мы хотим соединиться, и опять же ВТ адрес мы не увидим. Это устройство может с большой вероятностью быть КПК хакера, который рассылает мобильные вирусы или бэкдоры (проще троянцы). Конечно, такого рода атаки могут быть предотвращены улучшением процесса аутентификации, но в большинстве существующих мобильных киосков имеется лишь худо - бедно выполненная защита по PIN’y, и тот обычно постоянный.