Банды подростков с портативными колонками
Bluetooth, играющими громкую музыку, сводят меня с ума. Сегодня я
расскажу, как нейтрализовать это "стихийное бедствие".
Современные Wi-Fi роутеры могут
отфильтровывать нежелательные пакеты, но большинство
Bluetooth-адаптеров, мягко говоря, тупые. Им не важно, какие пакеты
вы отправляете, каков их размер и количество. Поэтому вы можете
увеличить информационный объем ping-пакета в Linux до огромных
размеров, а затем отправить 1000 таких пакетов на
Bluetooth-устройство.
Приведенные ниже методы эффективны
практически против всех Bluetooth-колонок, наушников и других
подобных устройств. Это происходит потому, что их производители
ленятся выпускать обновления прошивки, позволяющие фильтровать
входящие пакеты. Поэтому, если у вас есть ноутбук с Linux, вы
можете заставить замолчать любую колонку в радиусе его
действия.
Если колонка выдержит атаку, можно
попробовать отправить пакеты на подключенный к ней телефон. Я
протестировал этот метод на мощной колонке JBL Xtreme, и она
выдержала нагрузку. Но дешевые устройства китайского производства
эффективно заглушаются этой атакой.
Сначала необходимо найти подходящее
устройство в пределах диапазона с помощью команды
Команда отображает список доступных устройств
Bluetooth и их MAC-адреса. Если ваша система не видит адаптер
Bluetooth, попробуйте установить менеджер Bluetooth для Linux.
Например, в Kali я использую gnome-bluetooth, устанавливаемый
командой:
$ apt-get install gnome-bluetooth
В качестве альтернативы можно использовать
утилиту blueman:
$ apt-get install blueman
Получив список потенциальных жертв, атакуйте
их одним из приведенных ниже способов:
Она сгенерирует пакеты с размером, указанным
параметром, и отправит их на MAC-адрес, указанный параметром. В
результате вы будете наблюдать следующую ситуацию: время отклика в
терминале неуклонно растет, а функция Bluetooth на атакованном
устройстве перестает работать. Через некоторое время она снова
включится - но назойливая громкая музыка будет выключена на
некоторое время, принося вам злобное удовлетворение.
Приведенная выше схема отлично работает, если
атакуемое устройство (например, смартфон) подключено к наушникам
или динамику через Bluetooth. После атаки оба устройства не смогут
соединиться друг с другом.
Существует также более элегантный способ
заставить замолчать динамик, издающий звуки рэпа. Запустите утилиту
Websploit:
Введите следующую команду в консоли:
Он отобразит все модули, совместимые с этой
утилитой; есть много Wi-Fi компонентов, но вам нужен модуль
bluetooth/bluetooth_pod.
$ use bluetooth/bluetooth_pod
Теперь необходимо настроить параметры и
указать атакуемое устройство:
$ show options $ set bdaddr
Чтобы убедиться, что Bluetooth убит, измените
размер исходящего пакета:
Пора запускать "машину молчания":
В результате получается та же картина:
длительность пинга увеличивается, а музыка останавливается.
Потрясающе!
Готовые к использованию глушилки
Интернет-магазины предлагают интересные
устройства, в том числе глушилки, работающие на определенных
частотах. Такие гаджеты могут стоить хороших денег и обладают
различными возможностями. Некоторые из них уничтожают сразу все
мобильные сигналы, включая Wi-Fi и Bluetooth, другие не могут
заглушить даже H+.
Если вам действительно необходимо такое
устройство, я настоятельно рекомендую перед покупкой изучить
соответствующие статьи в национальном законодательстве. В некоторых
странах вы должны зарегистрировать свою глушилку в органах власти;
невыполнение этого требования влечет за собой административную или
уголовную ответственность.
Подключение к другому устройству.
Как уже говорилось выше, простые колонки и
наушники практически никогда не фильтруют полученные пакеты. Но что
если вы отправите на такое устройство не просто пакет ping, а
пакет, содержащий запрос на соединение? Или много таких
пакетов?
Не все производители принимают меры
предосторожности против ошибки переполнения буфера. Что произойдет,
если полученные пакеты выстроятся в очередь, и не останется места
для хранения новых запросов? В такой ситуации динамик попытается
выполнить команду и одновременно очистить буфер.
Поэтому используйте стандартный протокол
связи Bluetooth, rfcomm. Жаль, что утилита, управляющая этим
протоколом, не позволяет отправить тысячу таких запросов. Поэтому я
собираюсь написать короткий скрипт на Python, автоматизирующий этот
процесс.
#!/usr/bin/env python import subprocess
cmd=['rfcomm', 'connect', '', '1'] for i in range(0, 1001):
subprocess.call
(cmd) print('Connecting...')
Перед запуском скрипта необходимо узнать
MAC-адрес устройства. Используйте указанную выше hcitool
scanкоманду и вставьте полученный адрес в скрипт вместо файла .
Сохраните скрипт и выполните его:
Успех или неудача выполнения сценария будет
зависеть от модели атакуемого устройства (точнее, от времени,
необходимого для заполнения его буфера). Если буфер будет заполнен
до начала промывки, команда будет выполнена, и вы подключитесь к АС
одновременно с ее легитимным пользователем. Однако если буфер будет
очищен первым, вам придется запустить скрипт снова.
После успешного выполнения сценария вы можете
устроить собственную дискотечную вечеринку или отключить
устройство. Мои эксперименты с JBL Xtreme привели к его отключению,
а JBL Flip 2 перешел под мой полный контроль.