Dans cet atelier, vous allez découvrir les techniques d'analyse réseau à l'aide de Wireshark, l'analyseur de protocoles réseau de référence dans 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 pour capturer, filtrer et interpréter les paquets réseau. Grâce à des exercices concrets, vous comprendrez comment les différents protocoles communiquent et comment identifier d'éventuels dysfonctionnements du réseau.
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 de manière interactive le trafic réseau. Il est disponible dans les dépôts par défaut d'Ubuntu, ce qui rend le processus d'installation simple pour les débutants.
Tout d'abord, ouvrons le terminal. Sur votre bureau, localisez et ouvrez le Xfce Terminal. C'est ici que nous exécuterons toutes nos commandes pour installer et configurer Wireshark.
Remarque : Les utilisateurs de la version gratuite n'ayant pas accès à Internet, Wireshark est déjà pré-installé dans l'environnement de l'atelier. Vous pouvez passer directement au point 5 de la liste (vérification de l'installation). Passez à la version Pro pour vous entraîner à installer Wireshark par vous-même.
Utilisateurs Pro uniquement
Avant d'installer un logiciel, il est recommandé de mettre à jour la liste des paquets. Cela garantit l'installation de la version la plus récente de Wireshark. Exécutez la commande suivante :
sudo apt update
Nous allons maintenant installer Wireshark. L'option -y répond automatiquement "oui" à toutes les invites durant l'installation, ce qui fluidifie le processus :
sudo apt install wireshark -y
Pendant l'installation, vous rencontrerez une invite de sécurité importante concernant l'autorisation des utilisateurs non-administrateurs à capturer des paquets. C'est un choix de configuration crucial : sélectionner "Yes" signifie que vous n'aurez pas besoin des privilèges root pour lancer 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.
Une fois l'installation terminée, vérifions que Wireshark a été correctement installé. La vérification de la version confirme le succès de l'opération et indique la version utilisée :
wireshark --version
Pour capturer le trafic réseau, nous devons configurer les permissions 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 bons droits :
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 s'exécuter avec des privilèges élevés tout en permettant à Wireshark de fonctionner en tant qu'utilisateur normal — une bonne pratique de sécurité :
Après avoir exécuté ces commandes, vous devrez vous déconnecter puis vous reconnecter pour que les changements de groupe prennent effet. Vous avez maintenant installé et configuré Wireshark avec succès, et vous êtes prêt à analyser le trafic réseau !
Capture du trafic réseau
Maintenant que Wireshark est installé, capturons du trafic réseau. Imaginez que vous installez 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, celles-ci sont découpées en petits morceaux appelés paquets. Wireshark nous permet de voir et d'analyser ces paquets.
Ouvrez Wireshark en tapant wireshark dans le terminal et en appuyant sur Entrée. Cela lance l'interface graphique où nous effectuerons nos captures.
À l'ouverture de Wireshark, vous verrez une liste d'interfaces réseau (les connexions que votre ordinateur utilise pour communiquer). 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".
Double-cliquez sur l'interface active (celle qui montre un compteur de paquets en augmentation) pour démarrer la capture. La fenêtre principale affichera alors un flux de paquets en direct — chaque ligne représente une conversation réseau différente se déroulant en temps réel.
Créons une activité réseau simple à capturer. Ouvrez une nouvelle fenêtre de terminal et saisissez :
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 intercepter. Vous verrez de nouveaux paquets apparaître immédiatement dans Wireshark.
Après avoir observé plusieurs paquets (environ 5 à 10 secondes suffisent), cliquez sur le bouton rouge "Stop" en haut. Cela fige la capture pour nous permettre d'examiner les paquets sans que de nouveaux n'arrivent sans cesse.
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 l'horodatage. Les trois panneaux principaux affichent : la liste des paquets (résumé), les détails du paquet (décomposition technique) et les données brutes (vue hexadécimale).
Pour sauvegarder votre travail, allez dans File > Save et nommez le fichier myfirstcapture.pcapng dans le répertoire /home/labex. Le format .pcapng conserve tous les détails des paquets pour une analyse ultérieure.
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 des problèmes.
Analyse des données des paquets
Maintenant que nous avons capturé du trafic, examinons-le étape par étape. Voyez cela comme la lecture d'une conversation numérique : nous allons apprendre à interpréter le "langage" que les ordinateurs utilisent pour communiquer.
Ouverture du fichier de capture :
Lancez Wireshark et ouvrez votre fichier sauvegardé (myfirstcapture.pcapng) via File > Open ou en double-cliquant sur le fichier. Ce fichier contient tout le trafic réseau enregistré précédemment, à l'image d'un enregistrement d'appels téléphoniques.
Comprendre la liste des paquets :
Le panneau supérieur affiche tous les paquets capturés par ordre chronologique. Chaque ligne représente un message réseau, indiquant :
Qui l'a envoyé (Source IP)
Qui l'a reçu (Destination IP)
Le type de communication (Protocol)
Un bref résumé (Info)
Examen des détails du paquet :
Lorsque vous cliquez sur un paquet, le panneau central révèle sa structure interne à travers les couches de protocoles :
Frame : Détails physiques du réseau
Ethernet : Adressage matériel (MAC)
IP : Informations de routage Internet
TCP/UDP : Détails de transport
Données applicatives (comme HTTP)
Filtrage du trafic HTTP :
Dans la barre de filtre (en haut), tapez http et appuyez sur Entrée. Cela isole le trafic web, comme si vous recherchiez uniquement les SMS dans un journal d'appels. HTTP est le protocole utilisé par les navigateurs pour communiquer avec les serveurs.
Identification des requêtes Web :
Cherchez les paquets contenant "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
Le site web contacté
Les détails techniques de la requête
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 sur le navigateur
Les cookies et autres métadonnées
Recherche des réponses du serveur :
Cherchez les paquets "HTTP/1.1 200 OK". Ils indiquent que la page web a été délivrée avec succès. 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.)
Visualisation du contenu Web :
Dans les réponses réussies, consultez la section "Line-based text data" pour voir le contenu réel de la page. Cela affiche le code HTML que le serveur a envoyé à votre navigateur.
Cette analyse révèle les conversations invisibles qui circulent sur les réseaux. En comprenant ces schémas, vous pouvez dépanner 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. Dans cette étape, nous allons apprendre à utiliser les 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 un océan de paquets.
Avec votre fichier de capture ouvert, commençons par utiliser des filtres d'affichage simples. La barre de filtre se situe juste sous 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 == 93.184.215.14 (c'est l'adresse IP de example.com, mais vous pouvez la remplacer par n'importe quelle IP vue dans votre capture). Le double signe égal (==) signifie "correspond exactement".
Pour afficher toutes les requêtes HTTP GET (le type de requête web le plus fréquent), tapez http.request.method == "GET". Cela vous permet de voir quelles pages web sont demandées.
Créons maintenant un filtre plus complexe en combinant des conditions. Nous allons chercher toutes les requêtes HTTP GET spécifiquement destinées à example.com :
Dans la barre de filtre, saisissez : http.request.method == "GET" && http.host contains "example.com"
Le symbole && signifie "ET", donc les deux conditions doivent être remplies.
L'opérateur contains nous permet de faire correspondre n'importe quel domaine contenant "example.com".
Ce filtre affiche toutes les requêtes GET vers tout domaine incluant "example.com", ce qui est utile pour surveiller le trafic vers des sites spécifiques.
Comme vous utiliserez probablement certains filtres de manière répétée, Wireshark vous permet de les sauvegarder. Sauvegardons 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 désormais appliquer rapidement ce filtre à tout moment en le sélectionnant dans la liste des filtres enregistrés (l'icône de marque-page à côté de la barre de filtre).
Enfin, exportons certains de nos résultats pour documentation ou analyse ultérieure :
Allez dans Statistics > HTTP > Requests pour voir un résumé de toutes les requêtes HTTP.
Cliquez sur "Save as" pour exporter la liste dans un fichier.
Choisissez /home/labex comme emplacement et nommez le fichier http_requests.txt.
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 l'essentiel. C'est comme posséder une loupe surpuissante capable d'isoler instantanément des types de trafic précis. Maîtriser les filtres vous fera gagner des heures lors du dépannage réseau ou de l'analyse d'incidents de sécurité.
Résumé
Dans cet atelier, vous avez appris les bases de l'analyse réseau avec 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 des paquets et l'application de filtres pour isoler des types de trafic spécifiques.
Ces compétences fondamentales constituent une base solide pour la cybersécurité et l'administration réseau. Wireshark est un outil indispensable pour dépanner les réseaux, surveiller les modèles de trafic et identifier les menaces de sécurité potentielles. Continuez à pratiquer pour approfondir votre expertise en analyse réseau.