Une capture de paquets est ce que la sécurité informatique a de plus proche d'un détecteur de mensonges. Les pare-feu, les journaux applicatifs et les tableaux de bord donnent chacun leur version des faits. Le câble, lui, montre ce qui s'est réellement passé. Apprendre à utiliser Wireshark, l'outil qui lit ce câble, est l'une des compétences les plus rentables à acquérir tôt, que vous penchiez vers la défense réseau, la réponse à incident ou le test d'intrusion offensif.
Wireshark est un analyseur de paquets gratuit et open source qui capture le trafic d'une interface réseau et le décode protocole par protocole, des trames Ethernet jusqu'aux requêtes HTTP. Ce guide couvre l'installation, la capture de vos premiers paquets et l'usage des filtres d'affichage qui distinguent une enquête utile d'un mur de données illisible. Vous pouvez vous entraîner sur le workflow exact avec notre lab Packet Pursuit, un fichier de capture dans le navigateur avec un flag caché dans le trafic.
En bref : Wireshark est un analyseur de protocoles réseau gratuit qui capture et décode les paquets en temps réel. Choisissez votre interface, cliquez sur l'icône en forme d'aileron de requin pour lancer une capture, puis réduisez le bruit avec des filtres d'affichage comme http, ip.addr == 10.0.0.5 ou tcp.port == 443. Faites un clic droit sur un paquet et choisissez Suivre > Flux TCP pour réassembler toute une conversation. Maîtrisez d'abord les filtres ; le reste suivra.
Qu'est-ce que Wireshark ?
Wireshark est un analyseur de protocoles réseau gratuit et open source qui capture les paquets circulant sur une interface réseau et les décode en une analyse lisible par un humain. Il montre chaque couche de chaque paquet, des octets bruts sur le câble jusqu'aux données applicatives à l'intérieur, ce qui vous permet de voir exactement ce que deux machines se sont dit.
L'outil est la référence du secteur depuis plus de vingt ans, publié à l'origine sous le nom d'Ethereal en 1998 et renommé Wireshark en 2006. Il fonctionne sous Windows, macOS et Linux, comprend plus de 3 000 protocoles et lit les fichiers de capture de dizaines d'autres outils. Quand une offre d'emploi mentionne « analyse de paquets », il s'agit presque toujours de Wireshark.
On l'utilise pour répondre à des questions auxquelles les journaux ne répondent pas :
- Pourquoi cette connexion est-elle lente, et où se produit réellement le délai ?
- Cet hôte communique-t-il avec un serveur qu'il n'a aucune raison de contacter ?
- Quels identifiants ou données ont traversé le câble en clair ?
- Ce scan Nmap a-t-il atteint la cible, et comment la cible a-t-elle répondu ?
- Que contient ce
.pcapsuspect issu d'un dossier de forensique ?
Un point à clarifier tout de suite : Wireshark capture le trafic, il n'attaque rien. C'est un écouteur passif. Sur un réseau commuté, vous ne voyez que le trafic destiné à votre propre machine, sauf si vous mettez en place un port miroir ou une position volontaire d'homme du milieu. Cette limite déroute les débutants qui s'attendent à ouvrir Wireshark sur un LAN d'entreprise et à voir défiler le trafic de tout le monde.
Installer Wireshark
Wireshark est préinstallé sur Kali Linux et Parrot OS. Sur le reste, l'installation prend quelques minutes. La branche stable actuelle est la 4.4, et l'interface décrite ici correspond à la version 4.x.
Windows et macOS
Téléchargez l'installateur depuis la page de téléchargement officielle de Wireshark. L'installateur Windows inclut Npcap, le pilote de capture dont Wireshark a besoin pour voir le trafic en direct. Acceptez-le pendant l'installation, car sans pilote de capture vous pouvez ouvrir des fichiers enregistrés mais pas sniffer de paquets en direct. Sous macOS, l'installateur gère l'assistant ChmodBPF équivalent pour vous.
Linux (Debian et Kali)
sudo apt update && sudo apt install wireshark
Pendant l'installation, une invite demande si les utilisateurs non privilégiés doivent être autorisés à capturer des paquets. Répondez oui si vous voulez lancer Wireshark sans sudo, puis ajoutez votre utilisateur au groupe wireshark et déconnectez-vous puis reconnectez-vous :
sudo usermod -aG wireshark $USER
Cette étape compte. Lancer l'interface graphique en root est une mauvaise habitude et certaines versions refusent carrément de le faire. Si votre liste d'interfaces est vide, une appartenance de groupe manquante en est la cause habituelle.
Vérifier que ça fonctionne
wireshark --version
Vous devriez voir une version 4.x. Lancez l'application et vous arriverez sur l'écran d'accueil affichant la liste des interfaces réseau, chacune avec un petit graphe indiquant l'activité en direct. Si ces graphes bougent, votre pilote de capture fonctionne.
Comment utiliser Wireshark pour capturer vos premiers paquets
La capture du trafic est volontairement simple. La compétence réside dans ce que vous faites des paquets ensuite, mais il vous faut d'abord une capture.
Étape 1 : choisir la bonne interface
Sur l'écran d'accueil, chaque interface (Wi-Fi, Ethernet, loopback) affiche une courbe d'activité. Choisissez celle qui transporte le trafic qui vous intéresse. Si vous analysez votre propre requête web, il s'agit généralement de votre adaptateur Wi-Fi ou Ethernet actif. Double-cliquez dessus, ou sélectionnez-la et cliquez sur l'icône bleue en forme d'aileron de requin en haut à gauche, pour lancer la capture.
Étape 2 : générer du trafic
Avec la capture en cours, faites quelque chose sur le réseau. Chargez un site, envoyez un ping à un hôte ou lancez un scan. Les paquets commencent à défiler dans la liste en temps réel. Regardez le compteur grimper dans la barre d'état en bas. Sur une interface chargée, cela se remplit vite, et c'est exactement pourquoi le filtrage est la prochaine chose à apprendre.
Étape 3 : arrêter et enregistrer
Cliquez sur le carré rouge pour arrêter la capture une fois que vous avez ce qu'il vous faut. Enregistrez-la avec Fichier > Enregistrer sous au format .pcapng, le format moderne par défaut qui préserve les métadonnées de capture. L'ancien format .pcap reste utile lorsque vous avez besoin de compatibilité avec des outils plus anciens.
Lire l'interface de Wireshark
Une fois les paquets à l'écran, la fenêtre se divise en trois volets empilés de haut en bas. Comprendre le rôle de chacun fait la différence entre fixer du bruit et lire une conversation.
- Liste des paquets (haut) - Une ligne par paquet, avec des colonnes pour l'heure, la source, la destination, le protocole, la longueur et un résumé. C'est votre table des matières.
- Détails du paquet (milieu) - Le paquet sélectionné déplié en couches de protocole repliables, de Frame et Ethernet jusqu'à IP, TCP et le protocole applicatif. C'est là que vous creusez.
- Octets du paquet (bas) - Le hexadécimal et l'ASCII bruts du paquet. Cliquez sur un champ dans le volet des détails et les octets correspondants se surlignent en dessous.
Les couleurs des lignes ne sont pas décoratives. Wireshark est livré avec des règles de coloration qui signalent le trafic par type : violet clair pour TCP, bleu pâle pour UDP, noir pour les paquets comportant des erreurs comme les retransmissions TCP ou les échecs de somme de contrôle. Quand vous voyez une série de lignes noires, quelque chose se passe mal sur cette connexion, et c'est souvent là qu'une enquête commence. Vous pouvez modifier ces règles sous Vue > Règles de coloration, mais les valeurs par défaut sont bien choisies et méritent d'être apprises avant de les changer.
Les filtres Wireshark : la compétence qui compte le plus
Une seule minute de capture sur une machine normale peut produire des dizaines de milliers de paquets. Personne ne lit ça en faisant défiler. Les filtres sont votre moyen de le réduire à la poignée de paquets qui répondent à votre question, et Wireshark en propose deux types distincts que les débutants confondent sans cesse.
Filtres de capture et filtres d'affichage
Les filtres de capture décident quels paquets sont enregistrés en premier lieu. Vous les définissez avant de commencer, ils utilisent la syntaxe BPF (la même que tcpdump), et tout ce qu'ils écartent est perdu définitivement. Utilisez-les quand vous savez déjà que vous ne voulez, par exemple, que le trafic vers un seul hôte : host 192.168.1.50 ou port 80.
Les filtres d'affichage masquent les paquets sans les supprimer, et ce sont ceux que vous utiliserez en permanence. Vous les saisissez dans la barre verte sous la barre d'outils et vous les changez autant que vous voulez, puisque la capture complète reste intacte en dessous. Les deux utilisent une syntaxe complètement différente, ce qui est la source la plus fréquente de frustration chez les débutants. En cas de doute, capturez large et filtrez l'affichage.
Filtres d'affichage à mémoriser
Voici les filtres qui couvrent l'essentiel du travail quotidien. Tapez-en un dans la barre de filtre d'affichage et appuyez sur Entrée ; la barre devient verte quand la syntaxe est valide et rouge quand elle ne l'est pas.
| Filtre | Ce qu'il affiche |
|---|---|
http | Uniquement le trafic HTTP |
dns | Uniquement les requêtes et réponses DNS |
ip.addr == 10.0.0.5 | Tout paquet vers ou depuis cette IP |
ip.src == 10.0.0.5 | Uniquement les paquets de cette source |
tcp.port == 443 | Trafic sur le port 443 (HTTPS) |
tcp.flags.syn == 1 | Paquets SYN (tentatives de connexion, scans de ports) |
http.request.method == "POST" | Soumissions de formulaires et requêtes d'API |
frame contains "password" | Tout paquet dont les octets contiennent cette chaîne |
tcp.analysis.retransmission | Paquets retransmis (signes d'un lien lent ou avec pertes) |
Enchaînez-les avec and, or et not pour gagner en précision. Pour observer le trafic web d'un seul hôte en ignorant le reste, utilisez ip.addr == 10.0.0.5 and http. La référence officielle des filtres d'affichage liste chaque champ de chaque protocole, mais vous utiliserez la même douzaine de filtres dans quatre-vingt-dix pour cent des cas. Mon conseil : arrêtez de chercher la souris. Apprenez à taper les filtres et votre vitesse augmente immédiatement.
Suivre le flux TCP
Les paquets individuels sont des fragments d'un échange plus large. Le chargement d'une seule page web est dispersé sur des dizaines de paquets entrelacés avec d'autres trafics. La fonction la plus utile de Wireshark les réassemble pour vous.
Faites un clic droit sur n'importe quel paquet TCP et choisissez Suivre > Flux TCP. Wireshark recoud chaque paquet de cette conversation pour reconstituer l'échange d'origine et l'affiche dans une seule fenêtre, avec la requête du client dans une couleur et la réponse du serveur dans une autre. Pour une session HTTP non chiffrée, vous voyez les en-têtes de requête complets et la page renvoyée. Pour un protocole en texte clair comme FTP ou Telnet, vous voyez l'échange de connexion en clair, identifiants compris.
C'est le moment où Wireshark cesse de ressembler à une lance à incendie et commence à ressembler à une transcription. En pratique, suivre le flux est la façon de confirmer ce qu'une connexion a réellement fait : ce qui a été demandé, ce qui est revenu et si quelque chose de sensible a circulé sans chiffrement. Pour le trafic HTTPS, le flux est chiffré et affiche du texte chiffré, ce qui est tout l'intérêt de TLS. Vous ne pouvez le déchiffrer que si vous fournissez les clés de session, généralement en définissant la variable d'environnement SSLKEYLOGFILE avant de capturer le trafic de votre propre navigateur.
Utiliser Wireshark pour l'analyse de sécurité
Les filtres et les flux sont la mécanique. Ce qui fait que les professionnels de la sécurité vivent dans Wireshark, c'est ce que cette mécanique permet de trouver. Quelques schémas reviennent sans cesse.
- Identifiants en clair. Filtrez sur
httpouftpet suivez le flux. Tout mot de passe envoyé sur un protocole non chiffré s'y trouve en texte clair. Le voir une fois est un argument plus fort en faveur de HTTPS que n'importe quelle présentation. - Scans de ports. Une rafale de paquets
tcp.flags.syn == 1d'une source vers de nombreux ports est l'empreinte d'un scan SYN Nmap. Comparer la capture à votre sortie de scan Nmap vous apprend à quoi ressemble chaque type de scan sur le câble. - DNS suspect. Filtrez
dnset cherchez des sous-domaines longs et d'apparence aléatoire ou des requêtes vers des domaines qu'aucune application légitime n'utiliserait. L'exfiltration de données et les canaux de commande et contrôle se cachent souvent dans le DNS. - Destinations inattendues. Utilisez Statistiques > Conversations pour lister chaque paire d'hôtes de la capture, triée par octets. Un poste de travail qui expédie discrètement des mégaoctets vers une IP inconnue mérite un examen plus attentif.
Le menu Statistiques mérite une mention à lui seul. La hiérarchie des protocoles vous donne une ventilation sur un écran des protocoles qui composent la capture, et Conversations et Endpoints transforment des milliers de paquets en un tableau classé de qui a parlé à qui. Quand un .pcap atterrit sur votre bureau sans contexte, ces trois vues sont votre point de départ avant même de toucher à un filtre d'affichage.
L'analyse de paquets est au cœur du travail des équipes défensives comme offensives, ce qui explique pourquoi elle apparaît dans notre guide de test d'intrusion réseau comme dans nos contenus de forensique.
Considérations légales et éthiques
Rappel essentiel : capturer le trafic d'un réseau que vous ne possédez pas ou pour lequel vous n'avez pas d'autorisation écrite de surveillance peut enfreindre les lois sur l'interception et l'usage abusif d'ordinateurs, même si Wireshark ne fait qu'écouter. Passif ne veut pas dire légal.
Sniffer un réseau enregistre les communications d'autres personnes, et dans de nombreuses juridictions cela est traité de la même façon que l'interception d'un appel téléphonique. Le fait que l'outil soit passif n'offre aucune couverture légale. L'intention non plus.
Où la capture de paquets est autorisée
- Votre propre réseau domestique ou de lab, dont vous possédez chaque appareil
- Les tests d'intrusion couverts par une lettre de mission signée autorisant la surveillance réseau
- Les réseaux d'entreprise dont vous êtes l'administrateur et où la surveillance est indiquée dans la politique
- Les fichiers de capture fournis pour l'entraînement, les CTF et les labs de pratique conçus à cet effet
Le Wi-Fi public est le piège classique. Ouvrir Wireshark dans un café pour voir ce qui passe est une infraction pénale dans de nombreux endroits, quelle que soit la faible utilisation des données. Limitez vos captures aux systèmes que vous possédez ou que vous êtes mandaté pour tester.
Foire aux questions
À quoi sert Wireshark ?
Wireshark sert à capturer et analyser le trafic réseau paquet par paquet. Les ingénieurs réseau l'utilisent pour dépanner des connexions lentes ou cassées, les analystes de sécurité pour repérer le trafic malveillant et les identifiants en clair, et les équipes de forensique pour reconstituer ce qui s'est passé pendant un incident à partir d'un fichier de capture.
Wireshark est-il gratuit ?
Oui. Wireshark est gratuit et open source sous licence GNU GPL, sous Windows, macOS et Linux. Il n'existe pas de version payante ni de frais de licence. Le seul coût est le temps nécessaire pour apprendre ses filtres et ses fonctions.
Wireshark peut-il capturer des mots de passe ?
Il peut capturer des identifiants envoyés sur des protocoles non chiffrés comme HTTP, FTP et Telnet, car ceux-ci transmettent les données en texte clair. Le trafic protégé par HTTPS, SSH ou un VPN est chiffré, donc Wireshark ne voit que du texte chiffré, sauf si vous fournissez séparément les clés de session.
Quelle est la différence entre un filtre de capture et un filtre d'affichage ?
Un filtre de capture décide quels paquets sont enregistrés et utilise la syntaxe BPF définie avant la capture ; les paquets écartés sont perdus. Un filtre d'affichage ne fait que masquer les paquets et peut être changé à tout moment, puisque la capture complète reste intacte. Les filtres d'affichage utilisent la syntaxe propre à Wireshark et sont ceux que vous utilisez le plus.
Est-il légal d'utiliser Wireshark ?
Le logiciel est légal à installer et à exécuter. Capturer le trafic n'est légal que sur des réseaux que vous possédez ou pour lesquels vous avez une autorisation écrite explicite de surveillance. Sniffer un réseau que vous ne contrôlez pas, comme un Wi-Fi public, peut enfreindre les lois sur l'interception et l'usage abusif d'ordinateurs même si vous n'agissez jamais sur les données.
Pourquoi Wireshark n'affiche-t-il aucune interface ou aucun paquet ?
La cause habituelle est un problème de permissions ou de pilote. Sous Linux, ajoutez votre utilisateur au groupe wireshark et reconnectez-vous. Sous Windows, vérifiez que Npcap s'est correctement installé. Assurez-vous aussi d'avoir sélectionné une interface avec du trafic en direct, car un adaptateur inactif n'affiche rien.
Vos prochaines étapes
Vous savez désormais utiliser Wireshark de bout en bout : l'installer avec un pilote de capture fonctionnel, choisir la bonne interface et enregistrer des paquets, lire la disposition à trois volets et couper le bruit avec des filtres d'affichage comme http et ip.addr. Les deux compétences qui pèsent le plus sont taper les filtres d'affichage avec aisance et suivre le flux TCP pour lire une conversation complète. Maîtrisez-les et un fichier de capture cesse d'intimider pour devenir une histoire que vous savez lire.
Le moyen le plus rapide de l'ancrer est d'ouvrir une vraie capture et de chercher quelque chose de précis. Essayez notre lab Packet Pursuit pour filtrer du trafic en direct et récupérer un flag caché dans le navigateur, puis développez les compétences autour avec le cours de test d'intrusion réseau. Commencez avec l'offre gratuite de HackerDNA, sans carte bancaire, et analysez des paquets au lieu de vous contenter de lire à leur sujet.
Fait partie de la série Test d'intrusion
Articles associés :