Capturer des trames sans fil dans Tshark

WiresharkWiresharkBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à capturer et à analyser les trames de réseau sans fil à l'aide de Tshark, l'utilitaire en ligne de commande de Wireshark. Vous allez pratiquer l'activation du mode monitor sur une interface sans fil, la capture de paquets avec des filtres spécifiques et l'examen des détails des trames grâce à des exercices pratiques.

Le laboratoire couvre des techniques essentielles telles que la configuration de l'interface, la capture de paquets en temps réel et l'analyse ciblée des trames beacon 802.11. Vous aurez l'expérience pratique à la fois avec la ligne de commande et les méthodes d'interface graphique pour observer le trafic sans fil normalement invisible en modes réseau standard.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) wireshark/WiresharkGroup -.-> wireshark/interface("Interface Overview") wireshark/WiresharkGroup -.-> wireshark/packet_capture("Packet Capture") wireshark/WiresharkGroup -.-> wireshark/display_filters("Display Filters") wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") subgraph Lab Skills wireshark/interface -.-> lab-548917{{"Capturer des trames sans fil dans Tshark"}} wireshark/packet_capture -.-> lab-548917{{"Capturer des trames sans fil dans Tshark"}} wireshark/display_filters -.-> lab-548917{{"Capturer des trames sans fil dans Tshark"}} wireshark/packet_analysis -.-> lab-548917{{"Capturer des trames sans fil dans Tshark"}} wireshark/commandline_usage -.-> lab-548917{{"Capturer des trames sans fil dans Tshark"}} end

Activer le mode monitor avec -I

Dans cette étape, vous apprendrez à activer le mode monitor dans Wireshark en utilisant le paramètre -I. Le mode monitor est un mode spécial d'interface sans fil qui permet à votre carte réseau de capturer tout le trafic sans fil sur un canal spécifique, y compris les paquets qui ne sont pas destinés à votre appareil. Cela diffère du mode "géré" normal, où votre appareil ne reçoit que les paquets destinés à lui.

Avant de commencer, nous devons vérifier que votre interface sans fil est disponible. La plupart des systèmes Linux utilisent wlan0 comme nom d'interface sans fil par défaut. Nous allons utiliser la commande iwconfig pour vérifier :

iwconfig

Vous devriez voir wlan0 répertorié parmi les interfaces. Si vous voyez un nom différent, vous devrez le substituer dans les commandes suivantes.

Ensuite, nous allons utiliser airmon-ng de la suite aircrack-ng pour activer le mode monitor. Cet outil permet de gérer les interfaces sans fil :

sudo airmon-ng start wlan0

Cette commande crée une nouvelle interface virtuelle en mode monitor, généralement nommée wlan0mon. Le suffixe "mon" indique qu'elle est en mode monitor.

Vérifions que le mode est activé en vérifiant les propriétés de l'interface :

iwconfig wlan0mon

Dans la sortie, recherchez "Mode:Monitor" qui confirme que l'interface est correctement configurée. Vous pourriez également voir des détails sur la fréquence et le canal ici.

Maintenant, nous sommes prêts à lancer Wireshark avec le mode monitor activé :

wireshark -I -i wlan0mon

Le paramètre -I indique spécifiquement à Wireshark d'utiliser le mode monitor, tandis que -i wlan0mon spécifie notre interface de monitor. Sans ces paramètres, Wireshark essaierait de capturer en mode géré normal.

Lorsque Wireshark s'ouvre, vérifiez la liste des interfaces. Vous devriez voir wlan0mon avec un indicateur "(mode monitor)" à côté. Cette confirmation visuelle permet de vous assurer que vous capturez correctement tout le trafic sans fil.

Démarrer la capture avec -i wlan0

Dans cette étape, vous allez capturer le trafic réseau sans fil en utilisant l'interface en ligne de commande de Wireshark. Le paramètre -i est crucial car il indique à Wireshark quelle interface réseau surveiller. Étant donné que nous travaillons avec des réseaux sans fil, nous allons utiliser l'interface en mode monitor que nous avons préparée précédemment.

Avant de commencer, vérifions que notre interface en mode monitor est correctement configurée. Cette vérification nous assure que nous capturons le bon type de données sans fil :

iwconfig wlan0mon

Recherchez "Mode:Monitor" dans la sortie - cela confirme que votre interface est prête à capturer tout le trafic sans fil à proximité, pas seulement le trafic destiné à votre appareil.

Maintenant, nous allons lancer Wireshark pour commencer à capturer les paquets :

wireshark -i wlan0mon

La partie -i wlan0mon indique spécifiquement à Wireshark d'utiliser notre interface en mode monitor. Dans la fenêtre Wireshark qui apparaît :

  • La liste des paquets se remplira en temps réel à mesure que les appareils autour de vous transmettront des trames sans fil
  • Vérifiez que "wlan0mon" apparaît dans la barre d'état pour confirmer la sélection correcte de l'interface
  • Observez le compteur de paquets augmenter, indiquant une capture réussie

Pour arrêter la capture de paquets une fois terminé :

  • Cliquez sur le bouton rouge "Stop" proéminent dans la barre d'outils
  • Alternativement, appuyez sur Ctrl+E pour activer/désactiver la capture

Dans les situations où vous préférez travailler dans le terminal ou avez besoin d'automatiser les captures, Tshark (la version en ligne de commande de Wireshark) est parfait :

tshark -i wlan0mon -c 10

Cette commande capture exactement 10 paquets, puis s'arrête automatiquement, affichant les résultats directement dans votre terminal. Le paramètre -c contrôle le nombre de paquets à capturer avant d'arrêter.

Filtrer les trames beacon avec -Y "wlan.fc.type_subtype==0x08"

Dans cette étape, vous apprendrez à filtrer les trames beacon dans Wireshark en utilisant la syntaxe des filtres d'affichage. Les trames beacon sont des trames de gestion spéciales (type 0x08) que les points d'accès sans fil diffusent en continu pour annoncer la présence de leur réseau. Ces trames contiennent des informations essentielles telles que le nom du réseau (SSID), les débits de données pris en charge et les paramètres de sécurité.

  1. Tout d'abord, assurez-vous que Wireshark est en cours d'exécution avec la capture sur wlan0mon (étape précédente) :
wireshark -i wlan0mon

Cette commande lance Wireshark et commence à capturer les paquets sur l'interface wlan0mon, qui devrait déjà être en mode monitor après la configuration précédente.

  1. Dans l'interface de Wireshark :
    • Localisez la barre d'outils "Filter" en haut (juste en dessous du menu principal)
    • Entrez l'expression de filtre :
wlan.fc.type_subtype == 0x08

Ce filtre indique à Wireshark d'afficher uniquement les paquets dont le type/sous-type de trame correspond aux trames beacon (0x08 en hexadécimal).

  • Appuyez sur Entrée ou cliquez sur Appliquer pour activer le filtre
  1. Vous devriez maintenant voir uniquement les trames beacon dans la liste des paquets. Elles montrent généralement :

    • L'adresse MAC source du point d'accès (identifie le dispositif physique)
    • L'SSID (nom du réseau) dans les détails du paquet (ce que les utilisateurs voient comme nom de WiFi)
    • Des intervalles réguliers (généralement toutes les 100 ms, qui est l'intervalle de beacon par défaut)
  2. Pour examiner en détail une trame beacon :

    • Sélectionnez n'importe quelle trame beacon dans la liste des paquets en cliquant dessus
    • Développez la section "IEEE 802.11 Wireless LAN Management Frame" dans le panneau central
    • Vous pouvez y voir des détails importants tels que :
      • L'SSID (sous les paramètres étiquetés)
      • Les débits de données pris en charge
      • Les informations sur le canal
      • Les capacités de sécurité
  3. Pour le filtrage en ligne de commande avec tshark (utile pour les captures automatisées) :

tshark -i wlan0mon -Y "wlan.fc.type_subtype==0x08" -c 5

Cette commande capture exactement 5 trames beacon (-c 5) qui correspondent à notre filtre (-Y) depuis l'interface wlan0mon, puis se termine automatiquement. Le paramètre -Y dans tshark fonctionne de manière similaire au filtre d'affichage de Wireshark.

Afficher les trames avec -V

Dans cette étape, vous apprendrez à utiliser le mode de sortie détaillée de Wireshark avec le paramètre -V pour afficher des informations détaillées sur les trames dans le terminal. Cela est particulièrement utile lorsque vous utilisez des outils en ligne de commande comme tshark, car il fournit des informations plus complètes que la vue sommaire par défaut.

  1. Tout d'abord, assurez-vous d'avoir capturé des trames beacon (étape précédente). Nous allons utiliser tshark pour les afficher avec tous les détails :
tshark -r /tmp/capture.pcap -Y "wlan.fc.type_subtype==0x08" -V

Cette commande lit le fichier de capture enregistré (/tmp/capture.pcap) et filtre les trames beacon (type_subtype 0x08). Le paramètre -V indique à tshark d'afficher tous les détails disponibles pour chaque trame.

  1. Le paramètre -V fournit une sortie détaillée montrant :

    • Les en-têtes complets des trames (y compris tous les champs de trame 802.11)
    • Toutes les couches de protocole (de la couche physique jusqu'aux données d'application)
    • Les valeurs détaillées des champs (avec des explications de ce que chaque valeur signifie)
    • Les dumps hexadécimaux de la charge utile (utiles pour analyser le contenu brut des paquets)
  2. Pour capturer et afficher en direct des trames avec une sortie détaillée :

tshark -i wlan0mon -Y "wlan.fc.type_subtype==0x08" -V -c 5

Cela permettra de :

  • Capturer depuis l'interface wlan0mon (votre interface en mode monitor)
  • Filtrer uniquement les trames beacon (en utilisant le même filtre que précédemment)
  • Afficher une sortie détaillée (avec tous les détails expliqués ci-dessus)
  • Arrêter après 5 trames (le paramètre -c 5 limite la capture)
  1. Informations clés à observer dans la sortie détaillée :

    • Les valeurs du champ de contrôle de trame (montre le type de trame, la direction et d'autres indicateurs)
    • Les adresses MAC (source, destination et BSSID)
    • L'intervalle de beacon (à quelle fréquence l'AP envoie des trames beacon)
    • Les informations de capacité (quelles fonctionnalités l'AP prend en charge)
    • Les débits pris en charge (les débits de données que l'AP peut gérer)
  2. Pour une meilleure lisibilité, surtout avec des sorties longues, vous pouvez rediriger la sortie vers less :

tshark -i wlan0mon -Y "wlan.fc.type_subtype==0x08" -V -c 5 | less

Cela vous permet de faire défiler la sortie page par page en utilisant les touches fléchées, plutôt que d'avoir tout affiché dans votre terminal d'un coup. Appuyez sur 'q' pour quitter le visualiseur less une fois terminé.

Résumé

Dans ce laboratoire, vous avez appris à capturer des trames sans fil en utilisant Wireshark en mode monitor. Les étapes clés ont inclus l'activation du mode monitor avec airmon-ng, la vérification de l'état de l'interface avec iwconfig et le lancement de Wireshark avec le paramètre -I pour la capture en mode monitor. Vous avez également pratiqué la spécification de l'interface de surveillance avec -i et l'observation du trafic en temps réel.

De plus, vous avez exploré des techniques de filtrage en utilisant -Y pour les trames beacon et -V pour une analyse détaillée. Le laboratoire a couvert à la fois les méthodes via l'interface graphique et en ligne de commande, y compris tshark pour les opérations sans interface graphique, offrant ainsi une solide base pour l'analyse des trames sans fil.