Vous êtes sur la page 1sur 11

Université Cadi Ayyad

Faculté des Sciences et Techniques Marrakech


Département d’Informatique

TP1 : Initiation à Wireshark


Filière : Ingénierie en Réseaux et Systèmes d’Information (IRISI)

Module M11 « TCP/IP et interconnexion des réseaux »

Objectifs
L'objectif principal de ce TP est de vous aider à :

• Comprendre les concepts fondamentaux de la capture et de l'analyse de paquets


réseau (Packet sniffing).

• Apprendre à utiliser l'interface utilisateur de Wireshark.

• Acquérir des compétences pour capturer, filtrer, analyser et interpréter le trafic


réseau à l'aide de Wireshark.

L'initiation à Wireshark et au packet sniffing est une excellente introduction à la


compréhension du fonctionnement du TCP/IP et à l'analyse du trafic réseau.

Introduction
Un renifleur de paquets (packet sniffer) est un outil de base pour observer les échanges de
paquets réseau dans un ordinateur. Comme le nom suggère, un renifleur de paquets capture
(«renifle») les paquets envoyés / reçus depuis / par votre ordinateur ; il stockera également
et / ou affichera généralement le contenu des différents champs de protocole dans ces
paquets capturés. Un packet sniffer lui-même est un élément passif. Il observe les messages
envoyés et reçus par les applications et les protocoles exécutés sur votre ordinateur, mais
n'envoie jamais de paquets lui-même.

La figure 1 montre la structure d'un packet sniffer. À droite de la figure se trouvent les
protocoles (dans ce cas, protocoles TCP/IP) et applications (comme un navigateur Web ou un

1
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

client ftp) qui fonctionnent normalement sur votre ordinateur. Le packet sniffer, indiqué
dans le pointillé, est un ajout au logiciel habituel de votre ordinateur et se compose de deux
parties :

Figure 1 : Structure d’un packet sniffer


• Packet capture (pcap) : La bibliothèque de capture de paquets reçoit une copie de
chaque trame de couche de liaison envoyés ou reçus par votre ordinateur. Les
messages échangés par les protocoles de couche supérieure tels que HTTP, FTP, TCP,
UDP, DNS ou IP, tous sont finalement encapsulés dans la couche de liaison en
utilisant des trames transmises sur un support physique tel qu'un câble Ethernet.
Dans le cas où le support physique est un câble Ethernet, tous les protocoles de
couche supérieure sont finalement encapsulé dans une trame Ethernet. Capturer
ainsi toutes les trames de la couche liaison vous donne accès à tous les messages
envoyés / reçus de / par tous les protocoles et applications en cours d’exécution sur
votre ordinateur.
• Packet anaylzer: Le deuxième composant d'un renifleur de paquets est l'analyseur de
paquets, qui affiche le contenu de tous les champs dans un message de protocole.
Pour ce faire, l'analyseur de paquets doit «comprendre» la structure de tous les
messages échangés par les protocoles. Par exemple, supposons que nous soyons
intéressés à afficher les différents champs dans les messages échangés par le
protocole HTTP. L'analyseur de paquets comprend le format de trames Ethernet, et
peuvent ainsi identifier le datagramme IP dans une trame Ethernet. Il comprend

2
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

également le format de datagramme IP, afin qu'il puisse extraire le segment TCP dans
le datagramme IP. Enfin, il comprend la structure du segment TCP, ce qui lui permet
d'extraire le message HTTP contenu dans le segment TCP. Enfin, il comprend le
protocole HTTP et donc, pour exemple, sait que les premiers octets d'un message
HTTP contiendront la chaîne «GET», «POST» ou «HEAD».

Dans ce TP, nous utiliserons Wireshark en tant que packet sniffer. Cela nous permet
d'afficher le contenu des messages envoyés / reçus de / par les protocoles à différents
niveaux de la pile de protocoles TCP/IP. (Techniquement parlant, Wireshark est un analyseur
de paquet (Packet Analyzer) qui utilise une bibliothèque de capture de paquets sur votre
ordinateur).

Tâches 1 : Installation et familiarisation avec Wireshark

1. Téléchargez simplement le programme d'installation de Wireshark depuis


https://www.wireshark.org/download.html et exécutez-le en laissant les paramètres
d’installation par défaut. Sous Windows, Wireshark va proposer l'installation de
Npcap. Npcap est nécessaire pour faire des captures sous Windows. Il faut avoir les
droits administrateurs pour faire l'installation de Npcap.
La FAQ de Wireshark contient plusieurs astuces utiles et de petites informations
intéressantes, surtout si vous rencontrez des difficultés lors de l'installation ou de l'exécution
de Wireshark :

https://www.wireshark.org/faq.html
2. Lorsque vous lancez le logiciel Wireshark, l'interface utilisateur graphique Wireshark
s'affiche comme indiqué dans la Figure 2.

3
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

Figure 2. Interface utilisateur graphique initiale de Wireshark.


En général, vous pouvez sélectionnez n'importe quelle interface, mais cela ne signifie pas
que le trafic passera par cette interface. Après avoir sélectionné l'interface convenable, vous
pouvez cliquer sur le menu « Capture—Start » pour capturer les paquets comme illustré à la
figure suivante.

Figure 3 : Interfaces de capture dans W ireshark. Dans mon ordinateur, j’ai sélectionné
« Ethernet ».

4
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

La figure 4 présente une vue complète d'une capture de paquets dans Wireshark.

Figure 4 : Capture de paquets dans Wireshark -


L'interface Wireshark comprend cinq composants principaux (Figure 5) :

• Command menus : Les menus de commandes sont des menus déroulants standards
situés en haut de la fenêtre. Les menus Fichier (File) et Capture nous intéressent
maintenant. Le menu Fichier vous permet d'enregistrer données de paquet capturées
ou ouvrez un fichier contenant des données de paquet précédemment capturées et
quittez l'application Wireshark. Le menu Capture vous permet de commencer la
capture de paquets.
• Filter : Vers le haut de l'interface utilisateur graphique de Wireshark, se trouve le
champ de filtre d'affichage des paquets, dans lequel un nom de protocole ou d'autres
informations peuvent être saisis afin de filtrer les informations affichées dans la
fenêtre de liste des paquets (et donc l'en-tête et le paquet- fenêtres de contenu).
Une règle de filtre est constituée d'un ensemble de tests d'expressions impliquant
des noms de champs et des valeurs. Un paquet n'est alors listé qu'à la condition qu'il
satisfasse les conditions du filtre. L'ensemble des champs utilisables dans
l'établissement des règles e st listé dans la fenêtre pop-up accessible en cliquant sur

5
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

le bouton « expression ». Les règles peuvent être élaborées en sélectionnant les


champs à partir de cette fenêtre, ou en les écrivant directement dans la zone de
filtre. Un ensemble de filtres prédéfinis est accessible en cliquant sur le bouton «
filter ». Cette liste de filtres peut être complétée d'entrées enregistrées. Une fois le
filtre défini, il ne faut pas oublier de l'appliquer avec le bouton « Apply ». Voici
quelques exemples de filtres très utilisés sur Wireshark :
– Filtrer par adresse IP source ou destination :
i. ip.src == 192.168.1.100 : Affiche les paquets dont l'adresse IP source
est 192.168.1.100
ii. ip.dst == 8.8.8.8 : Affiche les paquets dont l'adresse IP de destination
est 8.8.8.8.
– Filtrer par protocole :
i. tcp: Affiche les paquets TCP.
ii. udp: Affiche les paquets UDP.
iii. http: Affiche les paquets HTTP.
– Filtrer par port :
i. tcp.port == 80 (pour le trafic HTTP)
ii. udp.port == 53 (pour le trafic DNS)

6
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

Figure 5. Interface utilisateur graphique Wireshark sur Microsoft Windows


• Listing of capture packets : La fenêtre de liste des paquets affiche un résumé sur une
ligne pour chaque paquet capturé. La liste des paquets peut être triée selon l'un de
ces catégories en cliquant sur un nom de colonne.
– No : le numéro de paquet (attribué par Wireshark; ce n'est pas un numéro de
paquet contenu dans l’en-tête d’un protocole),
– Time : l’heure à laquelle le paquet a été capturé,
– Source & Destination : les adresses IP source et de destination du paquet
– Protocol : Le champ de type de protocole répertorie le niveau le plus élevé
protocole qui a envoyé ou reçu ce paquet, c'est-à-dire le protocole qui est la
source ou le récepteur ultime de ce paquet.

7
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

– Info : les informations spécifique à chaque protocole contenues dans le


paquet.
• Packet-header details window : La fenêtre de détails d'en-tête de paquet fournit des
détails sur le paquet sélectionné (mis en surbrillance) dans la fenêtre de liste de
paquets. (Pour sélectionner un paquet dans la fenêtre de liste de paquets, placez le
curseur sur le résumé en une ligne du paquet dans la fenêtre de liste de paquets et
cliquez avec le bouton gauche de la souris.). Ces détails incluent des informations sur
la trame Ethernet et le datagramme IP qui contient ce paquet. La quantité de détails
Ethernet et de couche IP affichée peut être étendue ou minimisée en cliquant sur la
flèche pointant vers la droite ou vers le bas à gauche de la trame Ethernet ou de la
ligne de datagramme IP dans la fenêtre des détails du paquet. Si le paquet a été
transporté via TCP ou UDP, les détails TCP ou UDP seront également affichés, qui
peuvent de la même manière être étendus ou réduits. Enfin, des détails sur le
protocole de plus haut niveau qui a envoyé ou reçu ce paquet sont également
fournis.
• Packet content window : La fenêtre de contenu du paquet affiche le contenu entier
de la trame capturée, au format ASCII et hexadécimal.

Tâches 2 : Premiers pas avec Wireshark

La meilleure façon d'apprendre à connaître un nouveau logiciel est de l'essayer ! Nous


supposerons que votre ordinateur est connecté à Internet via une interface Ethernet filaire
ou une interface WiFi sans fil 802.11. Suivez les étapes suivantes :

1. Lancez votre navigateur web préféré.

2. Démarrez le logiciel Wireshark. Vous verrez initialement une fenêtre similaire à celle
présentée dans la Figure 2. Wireshark n'a pas encore commencé à capturer des
paquets.

8
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

3. Pour commencer la capture de paquets, sélectionnez le menu Capture, puis


Interfaces. Cela affichera la fenêtre "Wireshark: Capture Interfaces".

4. Pendant que Wireshark est en cours d'exécution, saisissez l'URL suivante dans votre
navigateur : http://gaia.cs.umass.edu/wireshark-labs/INTRO-wireshark-file1.html

et faites afficher cette page dans votre navigateur. Pour afficher cette page, votre
navigateur contactera le serveur HTTP à gaia.cs.umass.edu et échangera des
messages HTTP avec le serveur pour télécharger cette page. Les trames Ethernet ou
WiFi contenant ces messages HTTP (ainsi que toutes les autres trames passant par
votre adaptateur Ethernet ou WiFi) seront capturées par Wireshark.

5. Après que votre navigateur ait affiché la page INTRO-wireshark-file1.html, arrêtez la


capture de paquets dans Wireshark. Vous verrez maintenant une liste de paquets
capturés, y compris les échanges de messages HTTP avec le serveur web
gaia.cs.umass.edu. Notez qu'il y a souvent d'autres protocoles en cours sur votre
ordinateur, invisibles pour l'utilisateur. Nous en apprendrons plus sur ceux-ci plus
tard dans les chapitres et TP suivants !

6. Dans la fenêtre principale de Wireshark, saisissez "http" (sans guillemets et en


minuscules) dans la barre de spécification du filtre d'affichage, puis appuyez sur
Entrée. Cela affichera uniquement les messages HTTP dans la liste des paquets. Vous
pouvez également voir les détails spécifiques des messages HTTP en sélectionnant le
paquet correspondant.

7. Repérez le message HTTP GET envoyé depuis votre ordinateur vers le serveur HTTP
gaia.cs.umass.edu.

8. Recherchez un message HTTP GET dans la partie "liste des paquets capturés" de la
fenêtre Wireshark qui affiche "GET" suivi de l'URL gaia.cs.umass.edu que vous avez
saisie. Lorsque vous sélectionnez le message HTTP GET, les informations d'en-tête de
trame Ethernet, de datagramme IP, de segment TCP et de message HTTP seront

9
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

affichées dans la fenêtre d'en-tête du paquet. En cliquant sur les symboles '+' et '-'
ainsi que sur les flèches pointant vers la droite et vers le bas à gauche de la fenêtre
des détails du paquet, réduisez la quantité d'informations sur le cadre, l'Ethernet, le
protocole Internet et le protocole de contrôle de transmission affichée. Maximisez la
quantité d'informations affichées sur le protocole HTTP.

9. Maintenant, nous pouvons essayer un autre protocole. Utilisons par exemple le


protocole DNS.

10. Essayons maintenant de savoir ce que ces paquets contiennent en suivant l'une des
conversations, également appelées flux réseau (Network flows en anglais). Pour cela,
sélectionnez l'un des paquets et appuyez sur le bouton droit de la souris « Suivre—
UDP Stream », vous devriez voir quelque chose de similaire à la figure ci-dessous :

Questions :

1. Lisez attentivement les instructions du TP et terminez toutes les tâches ci-dessus.


2. Wireshark utilise des couleurs (code couleur) pour vous aider à identifier les types de
trafic en un coup d'œil. Quelle est la signification par défaut des couleurs utilisé dans
Wireshark ?

10
Université Cadi Ayyad
Faculté des Sciences et Techniques Marrakech
Département d’Informatique

3. Quelle est la commande de filtrage pour répertorier tout le trafic http sortant ?
4. Pourquoi DNS utilise-t-il « Follow UDP Stream » alors que HTTP utilise « Follow TCP
Stream »?

Compte rendu du TP

Je tiens à vous informer qu'il est indispensable de rédiger les comptes rendus en utilisant
l'éditeur LaTeX en ligne Overleaf. Ce dernier est un outil qui permet de faciliter la rédaction
en LaTeX d’une manière collaborative et en temps réel. L'objectif principal d'utilisation du
LaTex est de vous permettre de vous concentrer sur le contenu du document sans se
soucier de la mise en forme qui sera effectuée automatiquement. De plus, il offre une
grande variété de modèles préformatés (templates) pour aider les utilisateurs à créer
rapidement des documents de qualité professionnelle. Ces modèles peuvent être
personnalisés en fonction des besoins de l'utilisateur, de sorte que le document final reflète
le style et le format souhaités. Les modèles d'Overleaf peuvent être une ressource utile pour
les débutants comme pour les utilisateurs plus avancés, car ils permettent de gagner du
temps et de se concentrer sur le contenu plutôt que sur la mise en forme :

https://fr.overleaf.com/latex/templates/tagged/report

11

Vous aimerez peut-être aussi