Analyse réseau avec Wireshark

WiresharkBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, vous apprendrez les techniques d'analyse réseau en utilisant Wireshark, l'analyseur de protocoles réseau standard de l'industrie. Cet outil puissant vous permet d'examiner le trafic réseau au niveau des paquets, offrant des informations précieuses pour le dépannage et l'analyse de sécurité.

Vous acquerrez des compétences pratiques dans la capture, le filtrage et l'interprétation des paquets réseau. Grâce à des exercices pratiques, vous comprendrez comment les différents protocoles communiquent et comment identifier les problèmes réseau potentiels.

Installation de Wireshark

Dans cette étape, nous allons installer Wireshark sur notre système Ubuntu. Wireshark est un analyseur de protocoles réseau qui vous permet de capturer et de parcourir le trafic réseau de manière interactive. Il est disponible dans les dépôts Ubuntu par défaut, ce qui rend le processus d'installation simple pour les débutants.

  1. Tout d'abord, ouvrons le terminal. Sur votre bureau, localisez et ouvrez le terminal Xfce. C'est dans le terminal que nous exécuterons toutes nos commandes pour installer et configurer Wireshark.

Ouverture de la fenêtre du terminal Xfce

Remarque : Les utilisateurs gratuits ne peuvent pas se connecter à Internet, Wireshark est donc déjà préinstallé dans l'environnement de laboratoire. Vous pouvez passer directement au point 5 de la liste (vérifier si Wireshark est installé). Passez à la version Pro pour vous entraîner à installer Wireshark vous-même.

Utilisateurs Pro uniquement
  1. Avant d'installer un logiciel, il est recommandé de mettre à jour les listes de paquets. Cela garantit que nous installons la dernière version disponible de Wireshark. Exécutez la commande suivante :
sudo apt update
  1. Maintenant, nous allons installer Wireshark. L'option -y répond automatiquement "oui" à toutes les invites pendant l'installation, ce qui rend le processus plus fluide :
sudo apt install wireshark -y
  1. Pendant l'installation, vous rencontrerez une invite de sécurité importante concernant l'autorisation des utilisateurs non-superutilisateurs à capturer des paquets. Il s'agit d'un choix de configuration clé : sélectionner "Yes" signifie que vous n'aurez pas besoin de privilèges root pour exécuter Wireshark, ce qui est plus sûr pour une utilisation quotidienne. Utilisez les touches fléchées pour sélectionner "Yes" et appuyez sur Entrée.

Invite d'installation de Wireshark

  1. Une fois l'installation terminée, vérifions que Wireshark a été correctement installé. La vérification de la version confirme que l'installation a réussi et affiche la version que vous utilisez :
wireshark --version
  1. Pour capturer le trafic réseau, nous devons configurer les autorisations appropriées. Cela implique d'ajouter votre utilisateur au groupe wireshark et de configurer Dumpcap (l'outil de capture de paquets de Wireshark) avec les bonnes autorisations :

Tout d'abord, vérifiez si le groupe wireshark existe (il aurait dû être créé lors de l'installation) :

getent group wireshark

Si pour une raison quelconque le groupe n'existe pas, créez-le avec :

sudo groupadd wireshark

Ces commandes configurent Dumpcap pour qu'il s'exécute avec des privilèges élevés tout en gardant Wireshark lui-même en tant qu'utilisateur normal - une bonne pratique de sécurité :

sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 4755 /usr/bin/dumpcap
sudo gpasswd -a $USER wireshark

Après avoir exécuté ces commandes, vous devrez vous déconnecter et vous reconnecter pour que les changements de groupe prennent effet. Vous avez maintenant installé et configuré Wireshark avec succès, prêt à commencer l'analyse du trafic réseau !

Capture du trafic réseau

Maintenant que Wireshark est installé, capturons un peu de trafic réseau. Considérez cela comme l'installation d'un microphone pour enregistrer toutes les conversations se déroulant sur votre réseau. Chaque fois que votre ordinateur envoie ou reçoit des données en ligne, elles sont décomposées en petits morceaux appelés paquets. Wireshark nous permet de voir et d'analyser ces paquets.

  1. Ouvrez Wireshark en tapant wireshark dans le terminal et en appuyant sur Entrée. Cela lance l'interface graphique où nous effectuerons notre capture de paquets.

  2. Lorsque Wireshark s'ouvre, vous verrez une liste d'interfaces réseau (les connexions que votre ordinateur utilise pour communiquer avec les réseaux). Recherchez une interface nommée "eth0" ou "eth1" - ce sont généralement vos connexions Ethernet filaires. Si vous utilisez le WiFi, vous pourriez voir "wlan0" à la place.

Sélection de l'interface Wireshark

  1. Double-cliquez sur l'interface active (celle dont le nombre de paquets augmente) pour démarrer la capture. La fenêtre principale affichera désormais un flux en direct de paquets - chaque ligne représente une conversation réseau différente en cours.

Fenêtre de capture de paquets Wireshark

  1. Créons une activité réseau simple à capturer. Ouvrez une nouvelle fenêtre de terminal et entrez :

    curl http://example.com
    

    Cette commande récupère la page d'accueil de example.com, générant des paquets HTTP (trafic web) que Wireshark peut capturer. Vous verrez de nouveaux paquets apparaître dans Wireshark immédiatement après l'exécution de cette commande.

  2. Après avoir vu plusieurs paquets (environ 5 à 10 secondes suffisent), cliquez sur le bouton rouge "Stop" en haut. Cela fige la capture afin que nous puissions examiner les paquets sans que de nouveaux n'arrivent constamment.

  3. Félicitations ! Vous avez capturé votre premier trafic réseau. Chaque ligne représente un paquet avec des détails tels que les adresses source/destination, le type de protocole et le timing. Les trois panneaux principaux montrent : la liste des paquets (résumé), les détails du paquet (analyse technique) et les données brutes du paquet (vue hexadécimale).

  4. Pour enregistrer votre travail, allez dans File > Save et nommez le fichier myfirstcapture.pcapng dans /home/labex. Le format .pcapng préserve tous les détails des paquets pour une analyse ultérieure.

Enregistrement du fichier de capture réseau

Ce processus de capture de base est le fondement de l'analyse réseau. Dans les étapes suivantes, nous apprendrons à filtrer et à interpréter ces paquets pour comprendre le comportement du réseau et résoudre les problèmes.

Analyse des données de paquets

Maintenant que nous avons capturé du trafic réseau, examinons-le étape par étape. Considérez cela comme la lecture d'une conversation numérique - nous apprendrons à interpréter le "langage" que les ordinateurs utilisent pour communiquer.

  1. Ouverture du fichier de capture :
    Démarrez Wireshark et ouvrez votre fichier de capture enregistré (myfirstcapture.pcapng) via File > Open ou en double-cliquant sur le fichier. Ce fichier contient tout le trafic réseau que nous avons précédemment enregistré, similaire à un enregistrement d'appels téléphoniques.

  2. Comprendre la liste des paquets :
    Le volet supérieur affiche tous les paquets capturés par ordre chronologique. Chaque ligne représente un message réseau, indiquant :

    • Qui l'a envoyé (IP source)
    • Qui l'a reçu (IP de destination)
    • Quel était le type de communication (Protocole)
    • Un bref résumé (Info)
  3. Examen des détails des paquets :
    Lorsque vous cliquez sur un paquet, le volet central révèle sa structure interne à travers les couches de protocole :

    • Frame : Détails du réseau physique
    • Ethernet : Adressage matériel
    • IP : Informations de routage Internet
    • TCP/UDP : Détails de transport
    • Données d'application (comme HTTP)
  4. Filtrage du trafic HTTP :
    Dans la barre de filtre (en haut), tapez http et appuyez sur Entrée. Cela isole le trafic web, tout comme la recherche de messages texte uniquement dans un journal d'appels. HTTP est le protocole que les navigateurs web utilisent pour communiquer avec les serveurs.

Filtre de paquets HTTP Wireshark

  1. Identification des requêtes web :
    Recherchez les paquets avec "GET" dans la colonne Info. Ils représentent votre navigateur demandant des pages web. Cliquez sur l'un d'eux pour voir :
    • L'URL exacte demandée
    • Quel site web a été contacté
    • Les détails techniques sur la requête

Détails du paquet HTTP GET

  1. Analyse des en-têtes HTTP :
    Développez la section "Hypertext Transfer Protocol" pour voir :

    • La méthode de requête (GET/POST)
    • La ressource demandée (/index.html)
    • Les informations du navigateur
    • Les cookies et autres métadonnées
  2. Recherche des réponses du serveur :
    Recherchez les paquets "HTTP/1.1 200 OK". Ils montrent des livraisons de pages web réussies. Notez :

    • Les codes de réponse (200=succès, 404=non trouvé)
    • Le type de serveur (Apache/Nginx)
    • Le type de contenu (HTML, images, etc.)

Paquet de réponse réussie du serveur HTTP

  1. Affichage du contenu web :
    Dans les réponses réussies, vérifiez la section "Line-based text data" pour voir le contenu réel de la page web. Cela montre le code HTML que le serveur a envoyé à votre navigateur.

Cette analyse révèle les conversations cachées se déroulant sur les réseaux. En comprenant ces modèles, vous pouvez résoudre des problèmes, identifier des activités suspectes et comprendre comment les applications communiquent.

Utilisation des filtres

La véritable puissance de Wireshark réside dans sa capacité à filtrer et à analyser rapidement de grandes quantités de données réseau. Dans cette étape, nous apprendrons à utiliser des filtres pour nous concentrer sur des types de trafic spécifiques. Considérez les filtres comme des termes de recherche qui vous aident à trouver exactement ce que vous cherchez dans une mer de paquets réseau.

  1. Avec votre fichier de capture ouvert dans Wireshark, commençons par utiliser quelques filtres d'affichage simples. La barre de filtre est située juste en dessous de la barre d'outils principale :

    • Pour afficher uniquement le trafic TCP (le protocole de transport le plus courant), tapez tcp dans la barre de filtre et appuyez sur Entrée. Cela masquera tous les paquets non-TCP.
    • Pour afficher le trafic vers ou depuis une adresse IP spécifique, tapez ip.addr == x.x.x.x, en remplaçant x.x.x.x par une adresse issue de votre capture ou d'une recherche DNS. Pour l'adresse actuelle de example.com, exécutez dig example.com +short dans le terminal et utilisez l'une des IP qu'il affiche. La valeur 93.184.215.14 n'est qu'un espace réservé dans ce texte de laboratoire ; les adresses réelles changent avec le temps. Le double signe égal (==) signifie "correspond exactement".

    Exemple de filtre TCP Wireshark

    • Pour afficher toutes les requêtes HTTP GET (le type de requête web le plus courant), tapez http.request.method == "GET". Cela vous aide à voir quelles pages web sont demandées.
  2. Créons maintenant un filtre plus complexe en combinant des conditions. Nous rechercherons toutes les requêtes HTTP GET allant spécifiquement vers example.com :

    • Dans la barre de filtre, entrez : http.request.method == "GET" && http.host contains "example.com"
    • Le && signifie "ET", donc les deux conditions doivent être vraies
    • L'opérateur contains nous permet de faire correspondre n'importe quel domaine contenant "example.com"

    Filtre HTTP GET Wireshark

    • Ce filtre affiche toutes les requêtes GET vers n'importe quel domaine contenant "example.com", ce qui est utile pour surveiller le trafic vers des sites web spécifiques.
  3. Comme vous utiliserez probablement certains filtres à plusieurs reprises, Wireshark vous permet de les enregistrer. Enregistrons notre filtre HTTP GET :

    • Cliquez sur le signe plus ("+") à côté de la barre de filtre. Cela ouvre la fenêtre de gestion des filtres.
    • Nommez le filtre "HTTP GETs" et cliquez sur Save. Choisissez un nom descriptif dont vous vous souviendrez.
    • Vous pouvez maintenant appliquer rapidement ce filtre à tout moment en le sélectionnant dans la liste des filtres enregistrés (l'icône de signet à côté de la barre de filtre).
  4. Enfin, exportons certaines de nos conclusions pour la documentation ou une analyse plus approfondie :

    • Allez dans Statistics > HTTP > Requests pour voir un résumé de toutes les requêtes HTTP
    • Cliquez sur "Save as" pour exporter la liste vers un fichier
    • Choisissez /home/labex comme emplacement et enregistrez le fichier sous le nom http_requests.txt

    Exportation de la liste des requêtes HTTP

L'utilisation des filtres de cette manière vous permet de passer rapidement au crible de grandes quantités de données réseau et de vous concentrer sur ce qui est important. C'est comme avoir une loupe surpuissante capable de vous montrer instantanément des types spécifiques de trafic réseau. La maîtrise des filtres vous fera gagner des heures lors du dépannage de problèmes réseau ou de l'analyse d'événements de sécurité.

Résumé

Dans ce laboratoire, vous avez appris les fondamentaux de l'analyse réseau à l'aide de Wireshark. Vous avez maîtrisé des compétences essentielles, notamment l'installation de Wireshark, la capture du trafic réseau, l'analyse des données de paquets et l'application de filtres pour isoler des types de trafic spécifiques.

Ces compétences de base constituent une base solide pour la cybersécurité et l'administration réseau. Wireshark est un outil puissant pour dépanner les réseaux, surveiller les modèles de trafic et identifier les menaces de sécurité potentielles. Continuez à vous entraîner pour développer davantage votre expertise en analyse réseau.