====== 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. [[https://www.makeuseof.com/manage-bluetooth-linux-with-bluetoothctl/|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 **[[https://www.wireshark.org/index.html#aboutWS|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 : [[https://lmdb.ouvaton.org/lib/exe/fetch.php?media=2022_03_30_-_lmdb_-_resume_des_investigations_avec_wireshark.pdf|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 **[[https://www.kali.org/tools/ubertooth/|Ubertooth]]** (analyse spectrale), **[[https://fr.wikipedia.org/wiki/Kismet_(logiciel)|Kismet]]** (détection de signal) et **[[https://www.wireshark.org/index.html#aboutWS|Wireshark]]** (inspection de réseaux). (cf. [[https://lmdb.ouvaton.org/lib/exe/fetch.php?media=2021_11_-_projet-bluetooth-experience-fr.pdf|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|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** !! {{ ::capture_sortie_btscan-shell.png?400 |}} **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.** [[http://lmdb.ouvaton.org/lib/exe/fetch.php?media=collecte_data_bt_sur_linux.pdf|Exemple de captures et recoupements possibles]] (pdf 5 pages) {{ ::capture_sortie_btmon.png?400 |}} ==== 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) !!