Comment Wireshark peut faciliter l’analyse d’incidents Wi-Fi (Partie 1 : Capture de paquets sous Windows)

L’analyse des trames à l’aide de Wireshark ou d’un autre analyseur de trames est indispensable dans la résolution d’incidents réseau. Cela permet d’obtenir l’ensemble des informations échangées et ainsi comprendre précisément ce qu’il se passe. Mai cela devient vite un vrai casse-tête si nous ne sommes pas bien organisés et que nous ne recherchons pas les bons éléments. À travers ce livre blanc, nous allons essayer de vous montrer quelques astuces pour faciliter la résolution d’incidents Wi-Fi à l’aide de Wireshark sous Windows.

Pour cela, nous allons commencer par voir différents moyens de capture qui existe, nous allons ensuite étudier l’interface de Wireshark et voir comment sa personnalisation nous permet de visualiser plus lisiblement les informations que l’on souhaite et dans un troisième temps, nous verrons comment les outils intégrés à Wireshark nous permettent d’analyser plus en détails les trames capturées et nous permettent d’identifier des dysfonctionnements.

1 Capture avec une carte réseau

Pré-requis

  • Carte wifi en mode monitor (pour voir la liste des cartes wifi compatibles : https://secwiki.org/w/Npcap/WiFi_adapters )
  • Npcap installé avec la fonctionnalité “ Support raw 802.11 traffic ”
  • Wireshark en version supérieure à 3.0

La capture de trame 802.11 à l’aide de la carte wifi intégré a toujours été problématique avec Windows. En effet, il n’est que très rarement possible d’activer le mode Monitor qui permet de capturer la couche radio. Par défaut, c’est le mode Managed qui est activé et lui permet de récupérer les paquets à partir de la couche 3. La librairie Npcap permet de résoudre ce problème à condition que la carte wifi soit compatible (cf Pré-requis).

Vous pouvez également connaitre les modes supportés par votre carte réseau avec la commande suivante (Wi-Fi est le nom de la carte réseau) :

C:\Windows\System32\Npcap>WlanHelper.exe "Wi-Fi" modes

Attention : Avant de lancer la procédure, il est important de s’assurer que Winpcap n’est pas installé sur le poste.

La première étape consiste à activer le mode Monitor sur la carte réseau :

C:\Windows\System32\Npcap>WlanHelper.exe "Wi-Fi" mode monitor

Pour connaitre le mode utilisé actuellement par la carte réseau :

C:\Windows\System32\Npcap>WlanHelper.exe "Wi-Fi" mode

Il faut ensuite sélectionner le canal que l’on souhaite écouter (par exemple pour le canal 1) :

C:\Windows\System32\Npcap>WlanHelper.exe "Wi-Fi" channel 1

2 Capture avec un “module externe”

Nous n’avons pas toujours la possibilité de nous déplacer pour pouvoir réaliser les captures que nous souhaitons, ou bien nous souhaitons utiliser un équipement externe pour réaliser la capture. Je vous présente ici trois possibilités qui existent, il y en a d’autres, par exemple la possibilité d’utiliser une borne en mode “écoute” (attention, car l’activation du mode écoute désactive généralement la borne).

Wlan pi

Source de l’image : https://www.badgerwifi.co.uk/store/p/wlanpi

Pour capturer des trames avec le Wlan Pi, nous allons utiliser le script WLANPiShark2 : https://github.com/WLAN-Pi/WLANPiShark2 . Il va nous permettre depuis un ordinateur Windows de pouvoir récupérer les paquets capturés.

Voici un schéma explicatif fourni par l’auteur :

L’utilisation est ensuite très simple, car le script WLANPiShark2 est déjà intégré dans la distribution du Wlan Pi. Il suffit donc de modifier le script WLANPiShark.bat avec les informations que vous souhaitez et ensuite de l’exécuter avec les différents paramètres pour que cela fonctionne.

Vous pouvez retrouver tous les détails sur l’utilisation du script sur le github du projet : https://github.com/wifinigel/WLANPiShark

Ekahau Sidekick

Le module Sidekick d’Ekahau permet également de réaliser des captures de paquets, pour cela il suffit de le connecter à l’ordinateur, de lancer le logiciel Ekahau Capture (un compte Ekahau Connect est nécessaire) puis de sélectionner les canaux qui nous intéressent. Dans les options, nous avons la possibilité de choisir l’emplacement ou le fichier sera enregistré ainsi que le “dwell time” (temps d’écoute par canal). Une fois tout cela sélectionner, nous pouvons lancer la capture.

IMAGE EKAHAU CAPTURE

Via un autre ordinateur

Windows permet grâce à la fonctionnalité “Remote Packet Capture Protocol” de pouvoir recevoir dans wireshark des paquets capturés par un autre ordinateur. Pour cela, il faut aller sur la machine cliente dans la gestion des services et activer le service : Remote Packet Capture Protocol v.0 (experimental). Vous pouvez par ailleurs configurer le service en modifiant le port de destination ou en rajoutant une authentification.

Ensuite, sur la machine serveur, vous allez dans les options de captures, puis dans “Manage Interfaces” pour pouvoir ajouter des “remotes interfaces”. Vous pourrez ensuite ajouter l’adresse IP de la machine cliente et le port (par défaut 2002).

Ensuite, vous verrez les interfaces apparaître dans la liste des interfaces disponibles sous la forme suivante :

rpcap://<Adresse IP client>:2002/<ID de l’interface>

3 Lancement de la capture

Lors des analyses concernant des incidents Wi-fi il est généralement déconseillé d’utiliser les filtres de captures, cela pourrait masquer différents échanges qui ont lieu entre les différents équipements. Il est recommandé de capturer l’ensemble du trafic et ensuite d’appliquer des filtres de visualisation. Si le trafic est trop important, il est possible de le découper en plusieurs morceaux en fonction de la taille, de la durée ou du nombre de paquets.

En revanche, si le volume de données reste trop important ou bien que vous savez précisément ce que vous cherchez, il peut être intéressant de mettre en place des filtres de capture pour faciliter l’analyse.

Voici quelques exemples de filtres qui peuvent être utilisé :

wlan addr1 00:01:02:03:04:05 : Capture de paquet où l’adresse MAC 1 est 00:01:02:03:04:05 (addr2 pour l’adresse MAC 2, …)

wlan type mgt : Pour ne capturer que les trames de types management

no wlan type data : Pour ne pas capturer les trames de données

wlan type mgt subtype beacon : Pour ne capturer que les beacons

wlan type ctl and (subtype rts or subtype cts) : Pour ne capturer que les trames Clear-To-Send et Request-To-Send

Pour retrouver l’ensemble des filtres :

https://www.wireshark.org/docs/man-pages/pcap-filter.html