Filtrer et analyser des paquets réseau avec Wireshark

AL
Abdallah LISSER
26/10/2026
10 min de lecture
44 vues
Filtrer et analyser des paquets réseau avec Wireshark

Introduction

Lorsqu’une capture réseau est réalisée avec Wireshark, de nombreux paquets peuvent apparaître en seulement quelques secondes. Un ordinateur communique en permanence avec différents équipements et services utilisant plusieurs protocoles réseau.

Analyser manuellement l’ensemble des paquets capturés peut donc rapidement devenir difficile.

Wireshark dispose d’un système de filtres d’affichage permettant d’isoler uniquement les paquets qui nous intéressent. Il est par exemple possible d’afficher uniquement :

  • les paquets ICMP ;
  • les requêtes DNS ;
  • les communications TCP ou UDP ;
  • les communications provenant d’une adresse IP particulière ;
  • les communications utilisant un port précis.

Dans ce tutoriel, nous allons apprendre à utiliser plusieurs filtres Wireshark et à examiner les informations contenues dans les paquets capturés.

Environnement utilisé

Pour réaliser les différentes manipulations, nous allons utiliser deux machines virtuelles connectées au même réseau.

Machine Adresse IP Rôle
Ubuntu Desktop 192.168.50.20 Capture et analyse avec Wireshark
Debian Desktop 192.168.50.30 Génération du trafic réseau

Ubuntu sera donc notre machine d’analyse tandis que Debian permettra de générer différents types de trafic.

La communication peut être représentée de cette manière :

Schéma de communication entre Debian et Ubuntu avec Wireshark

Avant de commencer la capture, nous pouvons vérifier que les deux machines communiquent correctement.

Depuis Debian, ouvrez un terminal puis exécutez :

ping 192.168.50.20

Si Ubuntu est accessible, Debian doit recevoir des réponses similaires à celles-ci :

Résultat de la commande ping depuis Debian

Utilisez Ctrl + C pour arrêter la commande.

Démarrer une capture réseau avec Wireshark

Sur Ubuntu, ouvrez Wireshark.

L’écran d’accueil affiche les différentes interfaces réseau disponibles sur la machine.

Sélectionnez l’interface utilisée par Ubuntu pour communiquer avec le réseau 192.168.50.0/24.

Selon la configuration de votre machine, l’interface peut par exemple porter un nom comme ens33.

Double-cliquez sur l’interface pour commencer la capture.

Sélection de l'interface réseau dans Wireshark

Wireshark commence immédiatement à afficher les paquets transitant par cette interface.

Capture de paquets réseau dans Wireshark

Même sans effectuer d’action particulière, plusieurs communications peuvent déjà apparaître. Le système et les applications utilisent régulièrement le réseau en arrière-plan.

C’est précisément pour cette raison que les filtres sont particulièrement utiles.

Générer et filtrer du trafic ICMP

Nous allons commencer avec un protocole simple à identifier : ICMP.

ICMP est notamment utilisé par la commande ping pour vérifier si une machine est accessible sur le réseau.

Depuis Debian, exécutez :

ping 192.168.50.20

Laissez la commande fonctionner pendant quelques secondes.

Sur Ubuntu, Wireshark doit capturer les paquets générés par cette communication.

Capture du trafic ICMP dans Wireshark

Dans la barre de filtre située en haut de Wireshark, saisissez :

icmp

Validez avec la touche Entrée.

Filtre ICMP dans Wireshark

Wireshark affiche maintenant uniquement les paquets ICMP présents dans la capture.

Vous devriez notamment observer des lignes contenant :

Echo (ping) request
Echo (ping) reply

Les requêtes correspondent aux paquets envoyés par Debian vers Ubuntu.

Les réponses correspondent aux paquets retournés par Ubuntu vers Debian.

L’échange peut être représenté ainsi :

Schéma d'une requête et d'une réponse ICMP

Analyser un paquet ICMP

Cliquez sur l’un des paquets Echo (ping) request.

La partie inférieure de Wireshark affiche les différentes informations contenues dans le paquet.

Vous devriez notamment retrouver plusieurs sections :

Frame
Ethernet II
Internet Protocol Version 4
Internet Control Message Protocol

Ces sections correspondent aux différentes couches utilisées pour transporter les données sur le réseau.

Frame

La section Frame contient des informations générales concernant la trame capturée.

Wireshark indique notamment :

  • la taille de la trame ;
  • l’heure de capture ;
  • l’interface utilisée ;
  • le numéro de la trame dans la capture.

Informations Frame dans Wireshark

Ethernet II

Développez ensuite :

Ethernet II

Cette partie contient notamment les adresses MAC utilisées pour la communication sur le réseau local.

Vous pouvez y retrouver :

  • l’adresse MAC source ;
  • l’adresse MAC destination.

Informations Ethernet II dans Wireshark

Internet Protocol Version 4

Développez :

Internet Protocol Version 4

Wireshark affiche les informations liées au protocole IPv4.

Dans notre exemple, pour une requête envoyée par Debian vers Ubuntu, nous retrouvons notamment :

Source Address: 192.168.50.30
Destination Address: 192.168.50.20

Debian est donc la source du paquet tandis qu’Ubuntu est sa destination.

Informations IPv4 dans Wireshark

Internet Control Message Protocol

Développez enfin :

Internet Control Message Protocol

Wireshark indique qu’il s’agit d’une requête ICMP :

Type: 8 (Echo (ping) request)

Si vous sélectionnez maintenant la réponse envoyée par Ubuntu, les adresses IP sont inversées.

La source devient 192.168.50.20 et la destination 192.168.50.30.

Le type ICMP devient également :

Type: 0 (Echo (ping) reply)

Wireshark permet ainsi d’observer précisément les échanges qui se produisent lors d’un simple ping.

Filtrer les paquets avec une adresse IP

Il est également possible d’isoler les communications concernant une machine particulière.

Pour afficher tous les paquets dans lesquels Debian apparaît comme source ou destination, utilisez :

ip.addr == 192.168.50.30

Ce filtre permet d’afficher toutes les communications concernant l’adresse IP de Debian.

Nous pouvons être encore plus précis.

Filtre Wireshark sur l'adresse IP de Debian

Pour afficher uniquement les paquets envoyés depuis Debian, utilisez :

ip.src == 192.168.50.30

src signifie ici source.

Filtre Wireshark sur l'adresse IP source

Pour afficher uniquement les paquets envoyés vers Debian, utilisez :

ip.dst == 192.168.50.30

dst signifie ici destination.

Filtre Wireshark sur l'adresse IP destination

Ces filtres permettent de distinguer facilement les communications émises et reçues par une machine.

Filtrer et analyser une requête DNS

Nous allons maintenant observer une communication DNS.

Le Domain Name System, ou DNS, permet notamment de traduire un nom de domaine en adresse IP.

Sur Debian, arrêtez éventuellement le ping avec :

Ctrl + C

Exécutez ensuite :

nslookup sysnettuto.fr

Debian interroge alors son serveur DNS afin d'obtenir l'adresse IP associée au nom de domaine.

Dans Wireshark, saisissez le filtre suivant :

dns

Wireshark affiche uniquement les communications DNS présentes dans la capture.

Vous devriez pouvoir identifier une requête contenant le nom sysnettuto.fr.

Sélectionnez cette requête.

Requête DNS dans Wireshark

Dans les détails du paquet, développez :

Domain Name System (query)

Vous pourrez notamment observer :

  • le nom de domaine demandé ;
  • le type de requête DNS ;
  • l'adresse IP du serveur DNS interrogé.

Une réponse DNS doit également apparaître dans la capture.

Réponse DNS dans Wireshark

En sélectionnant cette réponse, Wireshark permet d'observer les informations retournées par le serveur DNS, notamment les enregistrements correspondant au domaine lorsque ceux-ci sont présents dans la réponse.

Nous pouvons donc visualiser le principe suivant :

Schéma d'une requête et d'une réponse DNS

Filtrer le trafic TCP

Wireshark permet également d’isoler les communications utilisant le protocole TCP.

Dans la barre de filtre, saisissez :

tcp

Tous les paquets TCP présents dans la capture sont maintenant affichés.

Filtre TCP dans Wireshark

En sélectionnant un paquet TCP, plusieurs informations importantes peuvent être observées :

  • l’adresse IP source ;
  • l’adresse IP destination ;
  • le port source ;
  • le port destination ;
  • les numéros de séquence ;
  • les différents indicateurs TCP.

Dans les détails du paquet, développez :

Transmission Control Protocol

Vous pouvez notamment retrouver des informations similaires à celles présentées ci-dessous :

Informations d'un paquet TCP dans Wireshark

Les ports permettent d’identifier les applications ou services impliqués dans la communication.

Filtrer le trafic UDP

Le même principe peut être utilisé avec UDP.

Dans Wireshark, saisissez :

udp

Seuls les paquets utilisant UDP sont maintenant affichés.

Filtre UDP dans Wireshark

En sélectionnant un paquet, développez :

User Datagram Protocol

Vous pourrez notamment observer :

Informations d'un paquet UDP dans Wireshark

Contrairement à TCP, UDP fonctionne sans établir préalablement une connexion entre les deux machines.

Certains protocoles réseau peuvent utiliser UDP, notamment DNS selon le type et la taille de l'échange.

Filtrer avec un numéro de port

Dans le tutoriel consacré aux ports réseau TCP et UDP, nous avons vu qu’un numéro de port permet notamment d’identifier le service ou l’application concerné par une communication.

Wireshark permet d’utiliser directement ces numéros dans les filtres.

Pour rechercher les communications TCP utilisant le port 443, utilisez :

tcp.port == 443

Filtre TCP sur le port 443

Ce filtre recherche le port 443 aussi bien comme port source que comme port destination.

Pour rechercher uniquement un port de destination, il est possible d’utiliser :

tcp.dstport == 443

Filtre TCP sur le port de destination 443

Pour rechercher uniquement un port source :

tcp.srcport == 443

Filtre TCP sur le port source 443

Le même principe existe avec UDP.

Par exemple :

udp.port == 53

permet de rechercher les communications UDP utilisant le port 53, traditionnellement associé au DNS.

Filtre UDP sur le port 53

Combiner plusieurs filtres

Les filtres deviennent particulièrement intéressants lorsqu’ils sont combinés.

Supposons que nous souhaitions afficher uniquement les paquets ICMP concernant Debian.

Nous pouvons utiliser :

ip.addr == 192.168.50.30 && icmp

L’opérateur && signifie ET.

Les deux conditions doivent donc être respectées.

Le paquet doit concerner l’adresse 192.168.50.30 et utiliser ICMP.

Combinaison d'un filtre IP et ICMP dans Wireshark

Nous pouvons également rechercher les communications DNS concernant Debian :

ip.addr == 192.168.50.30 && dns

Combinaison d'un filtre IP et DNS dans Wireshark

Il est également possible d’utiliser l’opérateur || qui signifie OU.

Par exemple :

icmp || dns

affiche les paquets ICMP ainsi que les paquets DNS.

Ces opérateurs permettent de construire progressivement des filtres plus précis.

Suivre une conversation TCP

Lorsqu’une communication TCP contient de nombreux paquets, analyser chaque paquet individuellement peut devenir difficile.

Wireshark dispose d’une fonction permettant de regrouper les données appartenant à une même conversation TCP.

Sélectionnez un paquet TCP dans la capture.

Effectuez un clic droit sur le paquet puis sélectionnez Suivre, puis Flux TCP :

Suivre un flux TCP dans Wireshark

Wireshark ouvre alors une nouvelle fenêtre contenant les données associées à cette conversation TCP.

Cette fonctionnalité est particulièrement pratique pour comprendre les échanges entre un client et un serveur.

Cependant, le contenu d’une communication n’est pas nécessairement lisible.

Lorsqu’un protocole de chiffrement comme TLS est utilisé, les données applicatives sont chiffrées. Wireshark peut toujours afficher de nombreuses informations concernant la communication, mais le contenu échangé n’apparaît pas directement en clair.

Effacer un filtre

Lorsqu’un filtre est actif, Wireshark continue d’utiliser la capture complète. Le filtre modifie uniquement les paquets affichés à l’écran.

Pour afficher de nouveau tous les paquets, effacez simplement le contenu de la barre de filtre puis appuyez sur Entrée.

Vous pouvez également utiliser le bouton permettant d’effacer le filtre situé à proximité de la barre de filtre.

Les paquets qui étaient masqués réapparaissent alors.

Quelques filtres Wireshark à retenir

Voici les principaux filtres utilisés dans ce tutoriel :

Filtre Utilité
icmp Afficher les paquets ICMP
dns Afficher les communications DNS
tcp Afficher les paquets TCP
udp Afficher les paquets UDP
ip.addr == 192.168.50.30 Afficher le trafic concernant Debian
ip.src == 192.168.50.30 Afficher les paquets provenant de Debian
ip.dst == 192.168.50.30 Afficher les paquets à destination de Debian
tcp.port == 443 Afficher le trafic TCP utilisant le port 443
udp.port == 53 Afficher le trafic UDP utilisant le port 53
ip.addr == 192.168.50.30 && icmp Afficher uniquement le trafic ICMP concernant Debian
ip.addr == 192.168.50.30 && dns Afficher uniquement le trafic DNS concernant Debian
icmp || dns Afficher le trafic ICMP ou DNS

Il existe de nombreux autres filtres Wireshark. Il est également possible de construire des expressions beaucoup plus précises en combinant plusieurs critères.

Conclusion

Wireshark permet non seulement de capturer les communications réseau, mais également d’isoler et d’analyser précisément les paquets qui nous intéressent.

Dans ce tutoriel, nous avons utilisé Debian pour générer différents types de trafic et Ubuntu pour les capturer et les analyser avec Wireshark.

Nous avons appris à filtrer les paquets selon leur protocole avec ICMP, DNS, TCP et UDP. Nous avons également utilisé les adresses IP et les numéros de ports pour rechercher des communications précises.

En examinant le contenu des paquets, nous avons pu retrouver les adresses MAC, les adresses IP, les protocoles utilisés ainsi que différentes informations propres à ICMP, TCP, UDP et DNS.

Enfin, la combinaison de plusieurs filtres et la fonction Follow TCP Stream permettent d’aller plus loin dans l’analyse d’une communication réseau.

Ces fonctionnalités constituent une base essentielle pour utiliser Wireshark lors du diagnostic et de l’analyse d’un réseau.

Commentaires

Laisser un commentaire

0 / 2500 caractères
* Champs obligatoires. Votre commentaire sera publié immédiatement.

Soyez le premier à commenter cet article !

Image agrandie