
Modulares Framework zum Testen von Schwachstellen in Bluetooth Classic (BR/EDR) mit Reconnaissance- und Exploit-Modulen für 43 öffentliche Angriffe/CVEs sowie strukturierter JSON-Berichterstattung.
Dokumentation • Installation • Verwendung • Exploits • Hardware • TODOs • Automobil-Evaluierung • Bluetooth-Ressourcen • Lizenz
BlueToolkit ist ein modulares Black-Box-Framework für Bluetooth-Sicherheitstests für Bluetooth Classic (BR/EDR) und Bluetooth Low Energy (BLE). Es unterstützt halbautomatische Tests und verfügt über drei Hauptmodule:
Wir haben BlueToolkit an 22 Fahrzeugen verschiedener Hersteller (Audi, BMW, Chevrolet, Honda, Hyundai, Mercedes-Benz, Mini, Opel, Polestar, Renault, Skoda, Toyota, VW, Tesla) evaluiert und 128 Schwachstellen aufgedeckt.
Darüber hinaus zeigen wir, wie Online-Konten über MAP übernommen werden können – für bereits aufgebaute Verbindungen oder von einer MitM-Position aus.
Diese Arbeit führte zu einem Forschungsartikel, der bei WOOT 25' angenommen wurde: fehlenden Link hinzufügen, sobald wir ihn haben
BlueToolkit kann auf Bare-Metal-Ubuntu/Debian-Systemen (empfohlen) oder in einer virtuellen Maschine installiert werden. In beiden Fällen fordert der Installer dazu auf, die spezifischen Module für Braktooth und BluetoothAssistant zu installieren, die bestimmte Hardware-Geräte erfordern, die verfügbar und angeschlossen sein müssen. Standalone-Module können auch separat installiert werden, indem der Installer erneut ausgeführt wird.
Voraussetzungen:
Nach der Installation:
* Sie müssen der virtuellen Maschine den Zugriff auf das Bluetooth-Modul oder zusätzliche Hardware über USB ermöglichen. Dazu müssen Sie Folgendes tun:
* Da die USB-Unterstützung bereits aktiviert ist, öffnen Sie VirtualBox
* Finden Sie eine laufende virtuelle Maschine und klicken Sie auf „Anzeigen“
* Klicken Sie auf „Geräte“ -> „USB“
* Ihnen werden mehrere Geräte angezeigt, die Sie für die virtuelle Maschine aktivieren können
* Aktivieren Sie jedes benötigte Gerät (Bluetooth-Modul, Hardware, Telefon) oder aktivieren Sie zur Sicherheit alle Geräte.
</details>
### Verwendung
Führen Sie `bluekit -h` aus, um Informationen zur Verwendung von BlueToolkit anzuzeigen:```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
Einige Anwendungsbeispiele sind:
Alle verfügbaren Exploits auflisten (kein Root erforderlich):
bluekit -l
Recon ausführen:
sudo bluekit -t AA:BB:CC:DD:EE:FF -r
Konnektivität testen:
sudo bluekit -t AA:BB:CC:DD:EE:FF -ct
Einen oder mehrere Exploits testen (durch Leerzeichen getrennt):
sudo bluekit -t AA:BB:CC:DD:EE:FF -e invalid_max_slot au_rand_flooding internalblue_knob
Weitere Dokumentation ist in unserem Wiki verfügbar
Einige Angriffe erfordern spezifische Hardware:
BlueToolkit lädt automatisch alle Schwachstellen- und Hardwarevorlagen herunter. Das Repository BlueToolkit templates bietet eine vollständige Liste einsatzbereiter Vorlagen. Zusätzlich können Sie Ihre eigenen Vorlagen und Prüfungen schreiben sowie neue Hardware hinzufügen, indem Sie dem Templating-Leitfaden von BlueToolkit folgen. Die YAML-Referenzsyntax ist hier verfügbar.
Wir haben Bluetooth-Schwachstellen auf eine „Awesome Bluetooth Security“-Art gesammelt und klassifiziert. Wir haben die folgenden Quellen verwendet - ACM, IEEE SP, Blackhat, DEFCON, Car Hacking Village, NDSS und Google Scholars. Wir haben in Suchmaschinen wie Google, Baidu, Yandex, Bing nach den folgenden Schlüsselwörtern gesucht - Bluetooth security toolkit, Bluetooth exploits github, Bluetooth security framework, bluetooth pentesting toolkit. Wir haben außerdem alle GitHub-Repositories anhand der folgenden Parameter analysiert - topic:bluetooth topic:exploit, topic:bluetooth topic:security.