Accueil / Sans-fil & radio

Bluetooth & BLE

Communication sans-fil courte portée à 2,4 GHz — Classic et Low Energy, GATT, appairage et sniffing.

Ébauche #bluetooth#ble#gatt

Description

Le Bluetooth est une technologie sans-fil courte portée opérant dans la bande 2,4 GHz (ISM). On distingue deux mondes largement incompatibles :

  • Bluetooth Classic (BR/EDR) : audio, transfert de fichiers, débits plus élevés.
  • Bluetooth Low Energy (BLE) : basse consommation, dominant dans l’IoT (montres, capteurs, serrures, ampoules).

En BLE, un appareil expose ses données via GATT (Generic Attribute Profile) : une hiérarchie de services contenant des caractéristiques (valeurs lisibles/écrivables/notifiables), chacune identifiée par un UUID.

Identification

  • Scanner l’environnement : bluetoothctl (scan on), applications mobiles type nRF Connect ou LightBlue.
  • Relever l’adresse (BD_ADDR), le nom, les services annoncés dans les paquets d’advertising.
  • Énumérer les services/caractéristiques GATT pour comprendre la surface exposée.
# Scanner puis se connecter avec bluetoothctl
bluetoothctl
> scan on
> connect AA:BB:CC:DD:EE:FF

Attacking

Énumération GATT

Beaucoup d’objets BLE exposent des caractéristiques sans authentification. Lire et écrire directement peut suffire à commander l’appareil (allumer, déverrouiller, changer un réglage).

  • gatttool, bleak (Python), ou nRF Connect pour lister et manipuler les caractéristiques.
  • Chercher les caractéristiques inscriptibles qui déclenchent une action.

Sniffing et rejeu

  • Un dongle nRF52 avec le firmware nRF Sniffer, ou Ubertooth, permet de capturer le trafic BLE et de l’analyser dans Wireshark.
  • Si les échanges ne sont pas chiffrés (appairage Just Works, absence de chiffrement de lien), il est possible de rejouer des commandes.

Faiblesses d’appairage

  • L’appairage Just Works n’offre aucune protection contre l’homme du milieu.
  • Certaines implémentations gardent des clés statiques ou acceptent une reconnexion sans re-vérification.

Protections

  • Utiliser un appairage avec authentification (LE Secure Connections, comparaison de code) et chiffrer le lien.
  • Contrôler les permissions GATT : ne pas exposer d’actions sensibles en lecture/écriture libre.
  • Ajouter une authentification applicative au-dessus du GATT (challenge/réponse), indépendante de l’appairage.
  • Limiter la durée et la portée de l’advertising, effacer les liaisons obsolètes.

Example devices

  • Serrures connectées, bracelets/montres, capteurs, ampoules et prises pilotables en BLE.

Ressources