Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
btlejuice — BtleJuice Bluetooth Smart (LE) Man-in-the-Middle-Framework | Kitploit
Tools/GitHubGitHub/digitalsecurity/btlejuice
Paket-Sniffing & AnalyseBluetooth-SicherheitExploitationDrahtlose SicherheitPenetrationstestsRed TeamingArchived
GitHubdigitalsecurity/btlejuice

btlejuice

BtleJuice Bluetooth Smart (LE) Man-in-the-Middle-Framework

Repository anzeigen
8511536vor 7 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

BtleJuice Framework

Einleitung

BtleJuice ist ein vollständiges Framework zur Durchführung von Man-in-the-Middle-Angriffen auf Bluetooth Smart-Geräte (auch bekannt als Bluetooth Low Energy). Es besteht aus:

  • einem Abhörkern (Interception Core)
  • einem Abhör-Proxy (Interception Proxy)
  • einer dedizierten Weboberfläche
  • Python- und Node.js-Bindungen

Wie installiere ich BtleJuice?

Die Installation von BtleJuice ist ein Kinderspiel. Stellen Sie zunächst sicher, dass Ihr System eine aktuelle Version von Node.js (>=4.3.2) und npm verwendet. Stellen Sie dann sicher, dass alle erforderlichen Abhängigkeiten installiert sind:

Ubuntu/Debian/Raspbian

root@kitploit:~
sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev

Fedora / Andere RPM-basierte

root@kitploit:~
sudo yum install bluez bluez-libs bluez-libs-devel npm

Zuletzt installieren Sie BtleJuice mit npm:

root@kitploit:~
sudo npm install -g btlejuice
Tool herunterladen

Wenn alles gut gegangen ist, ist BtleJuice einsatzbereit!

Wie verwende ich BtleJuice?

BtleJuice besteht aus zwei Hauptkomponenten: einem Abhör-Proxy und einem Kern. Diese beiden Komponenten müssen auf unabhängigen Maschinen laufen, um gleichzeitig zwei Bluetooth 4.0+-Adapter betreiben zu können. BtleJuice Proxy funktioniert nicht in einem Docker-Container.

Die Verwendung einer virtuellen Maschine kann helfen, dieses Framework auf einem einzigen Computer zum Laufen zu bringen.

Installieren Sie von Ihrer virtuellen Maschine aus btlejuice und stellen Sie sicher, dass Ihr USB-BT4-Adapter von der virtuellen Maschine aus verfügbar ist:

root@kitploit:~
$ sudo hciconfig
hci0:	Type: BR/EDR  Bus: USB
	BD Address: 10:02:B5:18:07:AD  ACL MTU: 1021:5  SCO MTU: 96:6
	DOWN
	RX bytes:1433 acl:0 sco:0 events:171 errors:0
	TX bytes:30206 acl:0 sco:0 commands:170 errors:0
$ sudo hciconfig hci0 up

Stellen Sie dann sicher, dass Ihre virtuelle Maschine eine IP-Adresse hat, die vom Host aus erreichbar ist.

Starten Sie den Proxy in Ihrer virtuellen Maschine:

root@kitploit:~
$ sudo btlejuice-proxy

Vergessen Sie nicht, auf Ihrem Host-Rechner den Bluetooth-Dienst zu stoppen und sicherzustellen, dass das HCI-Gerät geöffnet/initialisiert bleibt:

root@kitploit:~
$ sudo service bluetooth stop
$ sudo hciconfig hci0 up

Führen Sie schließlich den folgenden Befehl auf Ihrem Host-Rechner aus:

root@kitploit:~
$ sudo btlejuice -u <Proxy IP address> -w

Das Flag -w weist BtleJuice an, die Weboberfläche zu starten, während die Option -u die IP-Adresse des Proxys angibt.

Die Weboberfläche ist nun unter http://localhost:8080 verfügbar. Beachten Sie, dass der Port des Webservers über die Befehlszeile geändert werden kann.

Verwendung der Weboberfläche

Die Weboberfläche von BtleJuice bietet in der oberen rechten Ecke eine Reihe von Links zur Steuerung des Abhörkerns, wie unten gezeigt.

BtleJuice main web UI

Zielauswahl

Klicken Sie zuerst auf die Schaltfläche Select target und ein Dialogfeld wird angezeigt, das alle vom Abhörkern erkannten Bluetooth-Low-Energy-Geräte auflistet:

BtleJuice Target Selection Popup

Doppelklicken Sie auf das gewünschte Ziel und warten Sie, bis die Oberfläche bereit ist (das Aussehen der Bluetooth-Schaltfläche ändert sich). Sobald das Dummy-Gerät bereit ist, verwenden Sie die zugehörige mobile Anwendung oder ein anderes Gerät (je nach Erwartung), um eine Verbindung zum Dummy-Gerät herzustellen. Wenn die Verbindung erfolgreich ist, wird ein Connected-Ereignis auf der Hauptoberfläche angezeigt.

BtleJuice Target Selection Popup

Alle abgefangenen GATT-Operationen werden dann mit den entsprechenden Dienst- und Charakteristik-UUIDs sowie natürlich den zugehörigen Daten angezeigt. Die Daten werden standardmäßig im HexII-Format (einer Variante des von Ange Albertini entworfenen Formats) angezeigt, aber Sie können durch Klicken auf die Daten selbst von HexII zu Hex (und zurück) wechseln. Sowohl das Hex- als auch das HexII-Format werden von BtleJuice unterstützt.

Wiederholen von GATT-Operationen

Es ist möglich, jede GATT-Operation durch Rechtsklick und Auswahl der Option Replay zu wiederholen, wie unten gezeigt:

Replay Popup

Replay dialog

Klicken Sie auf die Schaltfläche Write (oder Read), um die entsprechende GATT-Operation zu wiederholen. Dieser Vorgang wird in der Hauptoberfläche protokolliert.

Dynamische Datenänderung

Nicht zuletzt kann die Oberfläche lokal oder global jede GATT-Operation abfangen und dynamische Datenänderungen ermöglichen. Sie können entweder die globale Abfangfunktion durch Klicken auf die Schaltfläche Intercept in der oberen rechten Ecke verwenden oder das Kontextmenü nutzen, um einen Hook für einen bestimmten Dienst und eine bestimmte Charakteristik zu aktivieren oder zu deaktivieren. Immer wenn eine GATT-Operation abgefangen wird, erscheint das folgende Dialogfeld:

Interceptr dialog

Daten in Datei exportieren

Seit Version 1.0.6 bietet die Oberfläche eine Datenexportfunktion, die lesbare und JSON-Exporte ermöglicht. Diese Exporte werden auf Basis der abgefangenen GATT-Operationen generiert, enthalten aber auch Informationen über das Zielgerät. Wenn die Schaltfläche Export geklickt wird, erscheint das folgende Dialogfeld:

Export dialog

Klicken Sie auf die Schaltfläche Export am unteren Rand des Dialogfelds, um eine JSON- (oder Text-)Version der abgefangenen Daten herunterzuladen.

Einstellungen

Das Einstellungsdialogfeld bietet derzeit eine einzige Option, die das automatische Wiederverbinden des Proxys ermöglicht, wenn das Zielgerät die Verbindung trennt. Dies kann nützlich sein, wenn man es mit Geräten zu tun hat, die nur für kurze Zeit aktiv sind.

Settings dialog

Trennung der Verbindung

Das Klicken auf die Schaltfläche Select Target oben rechts, während der Proxy aktiv ist, stoppt ihn und ermöglicht erneut die Zielauswahl.

Installieren der Bindungen

Die Node.js-Bindungen von BtleJuice können ebenfalls über npm installiert werden:

root@kitploit:~
$ sudo npm install -g btlejuice-bindings

Weitere Informationen zur Verwendung der Node.js-Bindungen finden Sie in der Paketdokumentation.

Danksagungen

Ein besonderer Dank gilt Slawomir Jasek, der viele noble/bleno-Tricks zur Vermeidung von Problemen mit mobilen Anwendungen aufgezeigt und während der DEF CON 24 BLE-MITM-Strategien geteilt hat =). Er ist auch der Autor von Gattacker.

Lizenz

Copyright (c) 2016 Econocom Digital Security

Hiermit wird jeder Person, die eine Kopie dieser Software und der zugehörigen Dokumentationsdateien (die "Software") erhält, kostenlos die Erlaubnis erteilt, die Software ohne Einschränkung zu nutzen, einschließlich und ohne Einschränkung der Rechte zur Verwendung, Vervielfältigung, Änderung, Zusammenführung, Veröffentlichung, Weiterverteilung, Unterlizenzierung und/oder zum Verkauf von Kopien der Software, und Personen, denen die Software zur Verfügung gestellt wird, dies unter den folgenden Bedingungen zu gestatten:

Der obige Urheberrechtshinweis und dieser Genehmigungshinweis müssen in allen Kopien oder wesentlichen Teilen der Software enthalten sein.

DIE SOFTWARE WIRD IM IST-ZUSTAND BEREITGESTELLT, OHNE JEGLICHE AUSDRÜCKLICHE ODER STILLSCHWEIGENDE GEWÄHRLEISTUNG, EINSCHLIESSLICH, ABER NICHT BESCHRÄNKT AUF DIE GEWÄHRLEISTUNG DER MARKTGÄNGIGKEIT, DER EIGNUNG FÜR EINEN BESTIMMTEN ZWECK UND DER NICHTVERLETZUNG VON RECHTEN DRITTER. IN KEINEM FALL SIND DIE AUTOREN ODER URHEBERRECHTSINHABER HAFTBAR FÜR JEGLICHE ANSPRÜCHE, SCHÄDEN ODER SONSTIGE HAFTUNG, OB AUS VERTRAG, UNERLAUBTER HANDLUNG ODER ANDERWEITIG, DIE AUS ODER IM ZUSAMMENHANG MIT DER SOFTWARE ODER DER NUTZUNG ODER ANDEREN GESCHÄFTEN MIT DER SOFTWARE ENTSTEHEN.