
Модульный фреймворк для тестирования уязвимостей Bluetooth Classic (BR/EDR) с модулями разведки и эксплуатации для 43 публичных атак/CVE и структурированной отчётностью в формате JSON.
Документация • Установка • Использование • Эксплойты • Оборудование • TODO • Оценка автомобилей • Ресурсы по Bluetooth • Лицензия
BlueToolkit — это модульный фреймворк для тестирования безопасности Bluetooth методом чёрного ящика для Bluetooth Classic (BR/EDR) и Bluetooth Low Energy (BLE). Он поддерживает полуавтоматическое тестирование и имеет три основных модуля:
Мы оценили BlueToolkit на 22 автомобилях разных производителей (Audi, BMW, Chevrolet, Honda, Hyundai, Mercedes-Benz, Mini, Opel, Polestar, Renault, Skoda, Toyota, VW, Tesla) и обнаружили 128 уязвимостей.
Кроме того, мы показываем, как захватить онлайн-аккаунты через MAP для уже установленных соединений или при позиции MitM.
Эта работа привела к исследовательской статье, принятой на WOOT 25': добавим недостающую ссылку, когда она появится
BlueToolkit можно установить на системы Ubuntu/Debian без виртуализации (рекомендуется) или с использованием виртуальной машины. В обоих случаях установщик предложит установить отдельные модули для Braktooth и BluetoothAssistant, для которых необходимо наличие и подключение определённых аппаратных устройств. Установку отдельных модулей также можно выполнить отдельно, запустив установщик ещё раз.
Предварительные требования:
После установки:
* Вам нужно разрешить виртуальной машине доступ к Bluetooth-модулю или дополнительному оборудованию через USB, для чего необходимо сделать следующее:
* Поддержка USB уже включена, поэтому откройте VirtualBox
* Найдите запущенную виртуальную машину и нажмите "Show"
* Нажмите "Devices" -> "USB"
* Вам будет показано несколько устройств, которые можно включить для виртуальной машины
* Отметьте любое нужное устройство (Bluetooth-модуль, оборудование, телефон) или отметьте все устройства для верности.
</details>
### Использование
Запустите `bluekit -h`, чтобы просмотреть информацию об использовании BlueToolkit:```console
usage: bluekit [-h] [-t TARGET] [-l] [-c] [-ct] [-ch] [-v VERBOSITY] [-ex EXCLUDEEXPLOITS [EXCLUDEEXPLOITS ...]] [-e EXPLOITS [EXPLOITS ...]] [-r] [-re] [-rej] [-hh HARDWARE [HARDWARE ...]] ...
positional arguments:
rest
options:
-h, --help show this help message and exit
-t TARGET, --target TARGET
target MAC address
-l, --listexploits List exploits or not
-c, --checksetup Check whether Braktooth is available and setup
-ct, --checktarget Check connectivity and availability of the target
-ch, --checkpoint Start from a checkpoint
-v VERBOSITY, --verbosity VERBOSITY
Verbosity level
-ex EXCLUDEEXPLOITS [EXCLUDEEXPLOITS ...], --excludeexploits EXCLUDEEXPLOITS [EXCLUDEEXPLOITS ...]
Exclude exploits, example --exclude exploit1, exploit2
-e EXPLOITS [EXPLOITS ...], --exploits EXPLOITS [EXPLOITS ...]
Scan only for provided --exploits exploit1, exploit2; --exclude is not taken into account
-r, --recon Run a recon script
-re, --report Create a report for a target device
-rej, --reportjson Create a report for a target device
-hh HARDWARE [HARDWARE ...], --hardware HARDWARE [HARDWARE ...]
Scan only for provided exploits based on hardware --hardware hardware1 hardware2; --exclude and --exploit are not taken into account
Некоторые примеры использования:
Список всех доступных эксплойтов (root не требуется):
bluekit -l
Запуск разведки:
sudo bluekit -t AA:BB:CC:DD:EE:FF -r
Проверка соединения:
sudo bluekit -t AA:BB:CC:DD:EE:FF -ct
Тестирование одного или нескольких эксплойтов (через пробел):
sudo bluekit -t AA:BB:CC:DD:EE:FF -e invalid_max_slot au_rand_flooding internalblue_knob
Более подробная документация доступна в нашей вики
Некоторые атаки требуют специального оборудования:
BlueToolkit автоматически загружает все шаблоны уязвимостей и оборудования. Репозиторий BlueToolkit templates предоставляет полный список готовых к использованию шаблонов. Кроме того, вы можете создавать собственные шаблоны и проверки, а также добавлять новое оборудование, следуя руководству по шаблонам BlueToolkit. Справочник по синтаксису YAML доступен здесь
Мы собрали и классифицировали уязвимости Bluetooth в стиле «Awesome Bluetooth Security». Мы использовали следующие источники — ACM, IEEE SP, Blackhat, DEFCON, Car Hacking Village, NDSS и Google Scholars. Искали следующие ключевые слова в поисковых системах, таких как Google, Baidu, Yandex, Bing: Bluetooth security toolkit, Bluetooth exploits github, Bluetooth security framework, bluetooth pentesting toolkit. Мы также проанализировали все репозитории Github по следующим параметрам: topic:bluetooth topic:exploit, topic:bluetooth topic:security.
Для ручных атак обратитесь к документации.