Bluing - Швейцарский нож для Bluetooth-разведки

04 авг 2025

Репозиторий давно не обновлялся

Последнее обновление было 3 года назад.

1,024
133
20
3 года

Когда в 2020 году исследователи обнаружили уязвимость BlueFrag в Android, позволившую удалённо выполнять код на устройствах без ведома пользователя, это в очередной раз показало, насколько уязвимыми могут быть Bluetooth-устройства. Именно в таких сценариях на помощь приходит Bluing — инструмент для сбора разведданных и тестирования безопасности Bluetooth, который мы сегодня разберём подробно.

Что такое Bluing?

Bluing (ранее известный как bluescan) — это инструмент для сбора информации о Bluetooth-устройствах, написанный на Python. Он позволяет:

  • Анализировать структуру Bluetooth-устройств
  • Тестировать безопасность соединений
  • Исследовать особенности реализации протокола
  • Собирать технические данные об окружении

Проект поддерживает как классический Bluetooth (BR/EDR), так и Bluetooth Low Energy (LE), что делает его универсальным инструментом для пентестеров и исследователей IoT.

Ключевые возможности

1. Полноценное сканирование окружения

С помощью команды bluing br --inquiry можно обнаружить все Bluetooth-устройства в радиусе действия:

sudo bluing br --inquiry

Инструмент покажет не только MAC-адреса, но и:

Реклама
  • Имена устройств
  • Классы устройств
  • Поддерживаемые сервисы
  • Уровень сигнала (RSSI)

2. Глубокий анализ устройств

Команда --sdp позволяет исследовать Service Discovery Protocol базу данных устройства, что особенно полезно для поиска потенциально уязвимых сервисов:

sudo bluing br --sdp 34:13:46:23:6A:4D

Вы получите список всех сервисов с подробной информацией о каждом, включая версии протоколов и параметры соединения.

3. Анализ функций LMP

LMP (Link Manager Protocol) — это низкоуровневый протокол Bluetooth. Bluing позволяет исследовать его особенности:

sudo bluing br --lmp-features 6A:8D:99:33:56:AE

Эта команда покажет:

  • Версию Bluetooth-стека
  • Поддерживаемые функции безопасности
  • Возможности энергосбережения
  • Особенности реализации производителя

4. Работа с Bluetooth Low Energy

Для устройств BLE доступны свои уникальные команды. Например, сканирование эфира:

sudo bluing le --scan

Или анализ GATT-профиля устройства:

sudo bluing le --gatt --addr-type=public 18:D9:8F:77:24:F1

Технические особенности

Bluing написан на Python 3.10 и использует:

  • BlueZ — официальный стек протоколов Bluetooth для Linux
  • PyBluez — Python-обёртку для BlueZ
  • Специальные библиотеки для работы с BLE

Для некоторых функций (например, сниффинга) потребуется дополнительное оборудование:

  • micro:bit для анализа BLE-трафика
  • Ubertooth One для работы с классическим Bluetooth

Практическое применение

  1. Пентестинг IoT-устройств: Поиск уязвимостей в умных устройствах
  2. Исследование безопасности: Анализ реализации Bluetooth в различных продуктах
  3. Digital Forensics: Сбор доказательств при расследовании инцидентов
  4. Разработка: Тестирование собственных Bluetooth-решений

Установка

Bluing работает только на Linux. Установка довольно проста:

sudo apt install python3-pip python3-dev libbluetooth-dev bluez
sudo pip3.10 install bluing

Полный список зависимостей можно найти в официальной документации.

Bluing — это мощный инструмент для профессионалов в области безопасности Bluetooth. Если вы:

  • Пентестер, специализирующийся на IoT
  • Исследователь беспроводных технологий
  • Разработчик Bluetooth-решений

то Bluing определённо заслуживает места в вашем арсенале. Проект активно развивается, имеет открытый исходный код и уже собрал более 800 звезд на GitHub — явный признак его востребованности в профессиональном сообществе.

Главное — помните об этической стороне: используйте подобные инструменты только в законных целях и с разрешения владельцев устройств.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.