Table des matières
Détection et analyse des signaux BT en environnement Linux
Présentation des outils de base
Bluez : paquet officiel de gestion du protocole Bluetooth sous Linux. Ce paquet fournit des outils et les démons système permettant d'utiliser les périphériques Bluetooth.
Blueman, Blueberry : Gestionnaires avec interface GUI (l'un ou l'autre selon la distribution utilisée)
Bluetoothctl : Gestionnaire en ligne de commande (intégré dans BlueZ), très riche en fonctionnalités. Présentation en anglais
Btmon : outil en ligne de commande qui permet de générer un log très détaillé des informations liées aux appareils détectés
hcitool : outil en ligne de commande (intégré dans BlueZ). Pour configurer les connections BT.
- hciconfig : indique le matériel dispo
- sudo hciconfig hci0 up : activation du controleur BT.
Analyse avec Wireshark (mars 2022)
Le logiciel Wireshark (inspection de réseaux) est très rapide à installer sur linux. On peut l'utiliser
- pour visualiser en temps réel les données fournies par l'outil btmon,
- pour enregistrer les données (au format .pcapng),
- pour analyser les données en différé.
Pour la visualisation en direct :
- démarrer Wireshark en mode administrateur (sudo wireshark) : cela autorise le mode capture à accéder aux outils Bluetooth ;
- en parallèle, lancer btmon (sudo btmon).
L'utilisation de filtres liés à des jeux de couleurs permet de mettre en évidence facilement les paquets correspondant à certains critères. Exemples dans ce document : Résumé des investigations avec Wireshark (6 pages - pdf)
Autres outils disponibles
L'équipe de Cognac-la-Forêt a utilisé une distribution Kali Linux (spécifiquement conçue pour la surveillance de réseaux internet et Bluetooth) et les logiciels Ubertooth (analyse spectrale), Kismet (détection de signal) et Wireshark (inspection de réseaux). (cf. rapport, p 4 à 11).
Analyse avec btcontrol et btmon (avant mars 2022)
Un petit programme bash permet d'utiliser bluetoothctl pour générer une liste des appareils détectés avec indication de l'heure : btscan-shell.
Pour l'utiliser :
- placer btscan-shell.sh dans le répertoire user et autoriser l’exécution en tant que programme
- en console :
while true; do echo -ne "\n ******** ";date ; timeout 10s ./btscan-shell.sh ; sleep 5; done
Résultat : cela exécute le scan pendant 10s, interrompt, ré-initialise et suspend 5s, puis lance un nouveau scan, et ceci sans fin… (chacun peut modifier les durées de scan et pause à sa guise)
- pour interrompre : ctrl+C !!
L'utilisation en parallèle de Btmon et Btscan-shell permet de récolter rapidement des infos que l'on peut ensuite analyser et recouper. Exemple de captures et recoupements possibles (pdf 5 pages)
Bluelog
pour l’installer sur Debian, il faut le compiler soi-même : https://www.bytebang.at/Blog/Bluelog+-+the+fast+bluetooth+scanner https://www.kali.org/tools/bluelog/
lancement : dans le dossier /Bluelog : ./bluelog -vmfn
Pas moyen d’afficher les appareils sans nom !!
Bluescan
Facile à installer, interface graphique… mais ça ne marche pas (sur Linux Mint 20.1) !!