Sécurité Wi-Fi & Bluetooth

Explorez les vulnérabilités des réseaux sans fil et apprenez à auditer et sécuriser les communications Wi-Fi et Bluetooth.

Audit & Défense Wi-Fi, Bluetooth, BLE Pré-requis : Connaissances de base en réseaux

Navigation rapide

1. Fondements de la Sécurité Wi-Fi

La sécurité des réseaux Wi-Fi (IEEE 802.11) repose sur une série de protocoles cryptographiques conçus pour assurer la confidentialité et l'intégrité des données. Leur évolution est une véritable course contre-la-montre face à la découverte de nouvelles vulnérabilités.

WEP (Wired Equivalent Privacy)

Implémentation : WEP utilise le chiffrement par flot RC4. La clé de chiffrement est une clé statique (64 ou 128 bits) concaténée avec un vecteur d'initialisation (IV) de 24 bits pour chaque paquet.

Faiblesse fondamentale : La taille de l'IV est extrêmement faible (24 bits). Sur un réseau actif, ces IV sont réutilisés en quelques heures, voire minutes. La réutilisation d'un même IV avec la même clé statique crée des keystreams RC4 corrélés. Des attaques statistiques (comme l'attaque FMS, Fluhrer-Mantin-Shamir) peuvent analyser ces corrélations pour retrouver la clé WEP secrète en capturant suffisamment de paquets.

WPA (Wi-Fi Protected Access)

Implémentation : Conçu comme une rustine pour WEP, WPA utilise TKIP (Temporal Key Integrity Protocol). TKIP utilise toujours RC4, mais enveloppe la clé WEP d'une couche de sécurité supplémentaire. Il introduit une hiérarchie de clés et un mécanisme de hachage par paquet, mélangeant la clé de base avec l'IV pour créer une clé de chiffrement unique pour chaque paquet. Il ajoute également un code d'intégrité de message (MIC), nommé "Michael", pour empêcher la falsification de paquets.

Faiblesses : Bien que plus robuste que WEP, TKIP reste une solution temporaire. Le MIC "Michael" est calculable et peut être contourné. De plus, l'utilisation sous-jacente de RC4 reste une source de préoccupations cryptographiques. Des attaques plus complexes peuvent toujours cibler TKIP.

WPA2 (Wi-Fi Protected Access 2)

Implémentation : WPA2 abandonne RC4 et TKIP au profit de CCMP (Counter Mode with Cipher Block Chaining Message Authentication Code Protocol), un protocole basé sur le chiffrement par bloc AES (Advanced Encryption Standard). C'est une norme de chiffrement robuste et largement auditée, utilisée par les gouvernements et les industries.

Faiblesse (en mode PSK) : La principale faiblesse ne réside pas dans le chiffrement AES lui-même, mais dans la méthode d'authentification par clé pré-partagée (PSK). Pour s'authentifier, un client et un point d'accès réalisent un "handshake" à 4 voies (4-way handshake). Si un attaquant capture ce handshake, il peut lancer une attaque par dictionnaire ou par force brute hors ligne pour deviner le mot de passe. Si le mot de passe est faible (court, commun, etc.), il peut être retrouvé.

WPA3 (Wi-Fi Protected Access 3)

Implémentation : WPA3 remplace le PSK par SAE (Simultaneous Authentication of Equals), un protocole d'accord de clé authentifié par mot de passe, également connu sous le nom de "Dragonfly Key Exchange".

Avantage et faiblesses : SAE est résistant aux attaques par dictionnaire hors ligne. Même si un attaquant capture le trafic d'authentification, il ne peut pas le réutiliser pour tester des mots de passe. Chaque tentative de devinette nécessite une nouvelle interaction avec le point d'accès, rendant la force brute en ligne infaisable. Cependant, les premières implémentations de WPA3 ont été victimes des attaques "Dragonblood", une série de vulnérabilités (attaques par canal auxiliaire, downgrade attacks) qui pouvaient permettre de récupérer le mot de passe dans certaines conditions.

2. Attaques Wi-Fi Courantes

Attaques de déni de service (DoS)

Attaque par désauthentification : L'attaquant envoie des trames de gestion 802.11 de type "Deauthentication" ou "Disassociation" non chiffrées et non authentifiées. Il peut usurper l'adresse MAC du point d'accès pour déconnecter un client spécifique, ou utiliser l'adresse de broadcast pour déconnecter tous les clients du réseau.

Attaques sur la confidentialité

Capture du Handshake WPA/WPA2 : C'est le vecteur d'attaque principal contre WPA2-PSK. En forçant un client à se reconnecter (souvent via une attaque deauth), un attaquant en mode moniteur peut capturer les 4 trames du handshake. Ce fichier de capture (.cap) contient le condensat du mot de passe et peut être attaqué hors ligne avec des outils comme hashcat ou aircrack-ng.

Attaque de l'Evil Twin : L'attaquant crée un faux point d'accès (AP) avec le même SSID et souvent une puissance de signal supérieure à celle de l'AP légitime. Les appareils clients, cherchant à se connecter au signal le plus fort, s'associent à l'Evil Twin. L'attaquant se place alors en position de Man-in-the-Middle, capable d'intercepter, de lire et de modifier tout le trafic non chiffré (HTTP, DNS, etc.).

Attaques sur les mécanismes d'authentification

Attaque sur WPS (Wi-Fi Protected Setup) : Le PIN WPS à 8 chiffres est validé par le point d'accès en deux moitiés de 4 et 3 chiffres (le dernier chiffre est une somme de contrôle). Cela réduit l'espace de recherche de 10⁸ à seulement 10⁴ + 10³ (11 000) possibilités. Une attaque par force brute peut donc retrouver le PIN complet en quelques heures, ce qui révèle ensuite le mot de passe WPA/WPA2 du réseau.

KRACK (Key Reinstallation Attack) : Une vulnérabilité dans la conception du 4-way handshake de WPA2. Un attaquant peut tromper une victime en lui faisant réinstaller une clé de session déjà utilisée. En manipulant et rejouant les messages du handshake, l'attaquant force la réinitialisation du nonce (numéro utilisé une seule fois) et du compteur de paquets. Cela permet de déchiffrer les paquets chiffrés avec la clé réinstallée.

3. Fondements de la Sécurité Bluetooth

La sécurité Bluetooth a radicalement évolué pour passer d'un modèle basé sur un simple PIN à des mécanismes d'échange de clés basés sur la cryptographie asymétrique.

Mécanismes d'Appairage (Pairing)

Legacy Pairing (Bluetooth < 2.1) : L'appairage repose sur un PIN partagé. Une clé de liaison de 128 bits est générée à partir de trois éléments : le PIN, l'adresse Bluetooth du périphérique (BD_ADDR) et un nombre aléatoire.
Faiblesse : Un attaquant qui écoute l'échange peut capturer les données nécessaires. Si le PIN est court (ex: "0000" ou 4 chiffres), il peut être bruteforcé hors ligne en une fraction de seconde, permettant à l'attaquant de calculer la clé de liaison et de déchiffrer tout le trafic.

Secure Simple Pairing (SSP) (Bluetooth 2.1+) : SSP abandonne le PIN partagé au profit d'un échange de clés basé sur la cryptographie à courbe elliptique Diffie-Hellman (ECDH). Les appareils génèrent une paire de clés publique/privée et échangent leurs clés publiques. La protection contre les attaques Man-in-the-Middle (MITM) est assurée par l'un des modèles d'association suivants :

  • Numeric Comparison : Les deux appareils affichent un code à 6 chiffres. L'utilisateur confirme qu'ils correspondent. Efficace contre les MITM.
  • Passkey Entry : L'utilisateur saisit sur un appareil un code affiché par l'autre. Efficace contre les MITM.
  • Just Works : Utilisé pour les appareils sans écran ni clavier (ex: casques). L'appairage se fait sans confirmation. Ce modèle est vulnérable aux attaques MITM, car il n'y a aucun moyen de vérifier l'identité de l'autre appareil.

Faiblesses de BLE et des Implémentations

Bluetooth Low Energy (BLE) utilise des versions améliorées de SSP (Secure Connections). Cependant, de nombreuses failles ne proviennent pas du protocole lui-même, mais de sa mauvaise implémentation par les fabricants :

  • Autorisations GATT incorrectes : Le profil GATT (Generic Attribute Profile) définit comment les données sont structurées et échangées. Souvent, les caractéristiques sensibles (lecture/écriture de données) ne sont pas protégées par une authentification ou un chiffrement approprié.
  • Mots de passe/PIN codés en dur : Certains appareils utilisent des PIN fixes et non modifiables, ce qui rend le Legacy Pairing trivial à contourner.
  • Manque de chiffrement : De nombreux objets connectés choisissent de communiquer en clair pour économiser de l'énergie ou simplifier le développement, exposant toutes les données.

4. Attaques Bluetooth Courantes

Bluejacking & Bluesnarfing

Bluejacking : Envoi de messages non sollicités (souvent sous la forme d'une carte de contact) à un appareil via le protocole OBEX. C'est plus une nuisance qu'une attaque.

Bluesnarfing : Exploitation de vulnérabilités dans le protocole OBEX sur d'anciens appareils pour accéder à des données sans autorisation : contacts, calendriers, messages. C'est une intrusion sérieuse.

BlueBorne & KNOB Attack

BlueBorne : Une série de vulnérabilités de dépassement de tampon dans l'implémentation de la pile Bluetooth sur diverses plateformes (Android, Linux, iOS, Windows). Elle permet à un attaquant à portée de prendre le contrôle total d'un appareil (exécution de code à distance) sans aucune interaction de l'utilisateur. L'attaque est aérienne et ne nécessite pas d'appairage.

KNOB (Key Negotiation of Bluetooth) : Une faille dans la spécification du protocole Bluetooth Classic. Un attaquant peut intercepter et manipuler la négociation de la longueur de la clé de chiffrement entre deux appareils pour les forcer à s'accorder sur une clé d'une entropie extrêmement faible (aussi peu qu'1 octet). Une clé aussi courte peut être bruteforcée en temps réel, permettant à l'attaquant de déchiffrer les communications.

Attaques sur BLE

Écoute passive (Sniffing) : Si une connexion BLE n'est pas chiffrée, un attaquant peut simplement écouter les communications avec un matériel comme l'Ubertooth One ou un dongle nRF. C'est courant pour les trackers de fitness ou les capteurs environnementaux.

Hijacking de connexion : Un attaquant peut envoyer des paquets pour faire déconnecter un appareil BLE légitime, puis se connecter rapidement à sa place pour usurper son identité et envoyer des commandes malveillantes (ex: déverrouiller une serrure connectée).

5. Outils d'Audit et d'Analyse

Une panoplie d'outils matériels et logiciels est disponible pour l'audit des réseaux sans fil.

Outils Wi-Fi

  • Aircrack-ng Suite : La référence pour l'audit Wi-Fi. Contient des outils pour la capture (airodump-ng), l'injection de paquets (aireplay-ng) et le cassage de clés (aircrack-ng).
  • Wireshark : Indispensable pour l'analyse de paquets. Avec une carte en mode moniteur, il permet de disséquer les trames 802.11.
  • Kismet : Un sniffer et un système de détection d'intrusion pour réseaux sans fil. Idéal pour la reconnaissance.
  • Wifite2 / hcxtools : Des scripts qui automatisent l'ensemble du processus d'attaque sur les réseaux WEP, WPA/WPA2 et WPS.
  • Hashcat : Outil de cassage de mots de passe par GPU extrêmement rapide, essentiel pour les attaques hors ligne sur les handshakes WPA/WPA2.

Outils Bluetooth

  • hcitool & hciconfig : Utilitaires de base sous Linux pour interagir avec les adaptateurs Bluetooth.
  • bettercap : Un framework d'attaque MiTM puissant qui inclut des modules pour le sniffing et l'usurpation BLE.
  • Ubertooth One : Un dongle USB open-source capable de se mettre en mode moniteur pour le Bluetooth Classic et de sniffer les connexions BLE.
  • nRF Connect for Mobile : Une application mobile très pratique pour scanner, explorer et déboguer les appareils BLE.
  • Scapy : Une bibliothèque Python puissante pour manipuler et forger des paquets, y compris des paquets Bluetooth.

6. Ressources pour aller plus loin