Analyse réseau avec Wireshark
Observer et comprendre les échanges de données sur un réseau
Notions théoriques
Wireshark est un outil d'analyse de trafic réseau permettant de :
- capturer,
- visualiser
- et analyser les paquets échangés entre des machines.
Wireshark est utilisé pour :
- diagnostiquer des problèmes réseau,
- détecter des attaques
- et comprendre le fonctionnement des protocoles de communication.
Fonctionnement de Wireshark
- Capture de trafic : Wireshark intercepte les paquets circulant sur une interface réseau.
- Filtrage des données : Il est possible d'afficher uniquement les paquets correspondant à un protocole ou une adresse IP spécifique.
- Analyse détaillée : Chaque paquet contient des informations sur sa source, sa destination, son protocole et son contenu.
- Reconstruction des échanges : Wireshark permet de visualiser les conversations entre machines sous forme de flux.
Types de protocoles analysés
- Ethernet : Niveau 2 du modèle OSI, utilisé pour transporter les paquets sur un réseau local.
- IP (Internet Protocol) : Permet l'acheminement des paquets entre machines sur Internet.
- TCP et UDP : Protocoles de transport assurant la communication entre applications.
- HTTP, HTTPS, DNS : Protocoles applicatifs utilisés pour la navigation Web et la résolution de noms de domaine.
Utilisation de Wireshark en cybersécurité
Wireshark permet de détecter des activités suspectes sur un réseau :
- Présence d'un scan de ports : Un attaquant peut tester quels services sont ouverts sur une machine.
- Tentative d'intrusion : Analyse des paquets pour identifier des attaques comme l'injection SQL ou le brute-force.
- Fuite de données : Vérification des paquets envoyés pour détecter des informations sensibles transmises en clair.
Limites et précautions d'utilisation
✅ Avantages :
- Permet une analyse en temps réel du réseau.
- Compatible avec de nombreux protocoles.
- Utile pour le diagnostic et la cybersécurité.
❌ Limites :
- Génère un grand volume de données, rendant l'analyse complexe.
- Ne peut pas capturer les paquets chiffrés (HTTPS, VPN).
- L'utilisation sur un réseau sans autorisation peut être illégale.
Exemple pratique
Capture et analyse d'un échange HTTP avec Wireshark
Il est possible d'utiliser Wireshark pour observer les requêtes et réponses HTTP échangées entre un navigateur et un serveur Web.
1) Installation de wireshark
Sur une distribution Linux basée sur Debian :
sudo apt update && sudo apt install wireshark -y
Sur Windows, télécharger et installer Wireshark depuis le site officiel.
2) Lancement de la capture de trafic
- Ouvrir Wireshark.
- Sélectionner l'interface réseau active (Wi-Fi ou Ethernet).
- Cliquer sur Start pour commencer la capture.
3) Filtrage des paquets HTTP
Dans la barre de filtres, entrer :
http
Cela affiche uniquement les paquets HTTP, en excluant les autres types de trafic.
4) Observation d'une requête et d'une réponse HTTP
- Ouvrir un navigateur et visiter un site en HTTP (non HTTPS).
- Dans Wireshark, repérer une requête GET et une réponse 200 OK.
- Analyser les en-têtes HTTP pour voir les informations échangées.
5) Arrêt de la capture et sauvegarde
- Cliquer sur Stop pour arrêter la capture.
- Sauvegarder le fichier pour une analyse ultérieure.
Test de mémorisation/compréhension
TP pour réfléchir et résoudre des problèmes
L'objectif de ce TP est d'utiliser Wireshark pour analyser le trafic réseau généré par une requête DNS et une connexion HTTPS.
1) Installation et lancement de Wireshark
Si Wireshark n'est pas encore installé, il est nécessaire de l'installer avant de commencer.
Sous linux (distribution debian)
sudo apt update && sudo apt install wireshark -y
Sous windows
Télécharger et installer Wireshark depuis le site officiel :
https://www.wireshark.org/download.html
Une fois l'installation terminée, ouvrir Wireshark.
Une solution
Vous devez être connecté pour voir le contenu.
2) Capture du trafic réseau
- Ouvrir Wireshark.
- Sélectionner l'interface réseau active (Wi-Fi ou Ethernet).
- Cliquer sur Start pour commencer la capture.
Une solution
Vous devez être connecté pour voir le contenu.
3) Analyse d'une requête DNS
- Ouvrir un terminal ou l'invite de commande.
- Effectuer une requête DNS en tapant :
sous linux/mac
nslookup example.com
sous windows
nslookup example.com
- Dans Wireshark, entrer le filtre suivant :
dns
- Identifier la requête DNS envoyée et la réponse reçue.
Une solution
Vous devez être connecté pour voir le contenu.
4) Capture et analyse d'une connexion HTTPS
- Ouvrir un navigateur Web.
- Accéder à un site sécurisé en HTTPS, par exemple :
https://www.wikipedia.org - Dans Wireshark, entrer le filtre suivant :
tls
- Identifier le processus de connexion TLS, notamment :
- Le Client Hello
- Le Server Hello
- L'établissement de la session sécurisée
Une solution
Vous devez être connecté pour voir le contenu.
5) Comparaison entre HTTP et HTTPS
- Ouvrir un site en HTTP :
http://neverssl.com - Dans Wireshark, entrer le filtre :
http
- Observer une requête GET et une réponse 200 OK.
- Comparer avec la capture HTTPS et noter les différences.
Une solution
Vous devez être connecté pour voir le contenu.
6) Sauvegarde et export des résultats
- Arrêter la capture en cliquant sur Stop.
- Sauvegarder la capture au format .pcapng pour une analyse ultérieure.
- Exporter une requête DNS en fichier texte :
- Sélectionner un paquet DNS.
- Aller dans File > Export Packet Dissections > As Plain Text.
- Enregistrer le fichier.
Une solution
Vous devez être connecté pour voir le contenu.