Wireshark Capture et analyse de trames IP Marc BOUGET 01/04/2016
1.1.Schéma d’architecture 1.2.TCP Dump Sommaire 1.Introduction 1.1.Schéma d’architecture 1.2.TCP Dump
Schéma d’architecture Apache PHP GET Bouchon WASSUP TCPDUMP X WASSUP SB APPLI RP SA Livebox Notre exemple consiste à vérifier si les paramètres recherchés sont bien échangés entre le serveur d’application et le wassup. La livebox veut effectuer une Mise à jour et envoie donc une demande au serveur d’application A Le serveur A demande au WASSUP des paramètres d’authentification pour continuer la Mise à jour. Le WASSUP revoie donc ces paramètres et le serveur A peut continuer son application avec le serveur B. Pour savoir si l’échange de paramètre à été effectué il faut faire une capture des échanges du serveur A et du wassup
La capture est faite avec la commande TCPDUMP cette capture est faite avec la commande TCPDUMP pour effectuer une capture TCPDUMP et pouvoir l’utiliser sur Wireshark il faut utiliser certains paramètres -i permet de capturer sur l’interface eth0 -s 0 permet d’avoir toutes les données des paquets -X percontenue complet du paquet interface à capturer
2.Fonctionnalités de Wireshark 2.1.Installation de Wireshark Sommaire 2.Fonctionnalités de Wireshark 2.1.Installation de Wireshark 2.2.Interface de Wireshark 2.3.Capture de trames avec Wireshark 2.4.Temps de référence 2.5.Filtre d’affichage 2.6.Follow tcp steam
Installation de Wireshark Sous Windows, Wireshark est un analyseur réseau gratuit et libre téléchargeable sur internet www.wireshark.org Wireshark permet de capturer et visualiser jusqu’à la couche application du modèle TCP/IP. Wireshark reconnait aujourd’hui plus de 1000 protocoles On autorise la capture en cochant « Install WinPcap » Wireshark peut lire les fichiers générés par la commande tcpdump sur des machines linux. pour installer Wireshark il faut télécharger le logiciel sur le site www.Wireshark.org accessible aussi par google sur le premier lien de la recherche « Wireshark » pour le télécharger il faut cliquer sur le bouton download. durant l’installation Wireshark demande si on veut installer winPcap. winPcap sert à capturer des trames il n’est pas indispensable.
interface de wireshark 1 2 3 l’interface de Wireshark se présente en 4 parties, la première partie permet d’aller dans les option principales du logiciel la deuxième permet de visualiser la liste des paquets capturés la troisième partie permet de voir le contenue d’un paquet sélectionnée plus haut et la quatrième partie permet de voir le paquet dans son ensemble tel qu’il est reçu par wireshark 4
lancer une capture de trame Pour lancer une capture de trame il faut sélectionner un interface de capture dans l’icône d’option de capture il y à d’autres option paramétrables dans les onglets sortie et option
mise en place d’un filtre d’affichage tableau des opérateurs de comparaison Format anglais: Format de type C: Signification: eq == Egal ne != Différent gt > Plus grand que lt < Plus petit que ge >= Plus grand ou égale à le <= Plus petit ou égal à les filtres d’affichage permettent de n’afficher uniquement les paquets choisis dans une capture
mise en place d’un filtre d’affichage on peut aussi appliquer un filtre d’affichage avec la souris. il suffit de sélectionner le terme a rechercher
exemple de filtre d’affichage ce filtre d’affichage montre les paquets dont l’ip source est 192.168.42.230 et l’ip de destination différente de 8.253.170.249
Suivi d’un flux TCP une petite bar permet de visualiser a quel échange fait partis le paquet pour suivre une connexion tcp ont peut cliquer sur l’un des paquets, puis une petite barre à gauche va apparaitre et montrer la connexion à laquelle le paquet fait parti
suivie d’un flux TCP pour suivre plus facilement cette connexion tcp on peut appliquer un filtre d’affichage en faisant clic droit sur l’un des paquets de la connexion cliquer sur follow puis TCP Stream (suivre puis Flux TCP en français)
suivie d’un flux TCP en appliquant le filtre de flux tcp une page s’affiche contenant les échanges effectué durant cette connexion.
suivie d’un flux TCP Un filtre d’affichage est automatiquement utilisé pour afficher le flux TCP
3.Rappel du Protocole TCP/IP 3.1 Explication 3.2 Exemple Sommaire 3.Rappel du Protocole TCP/IP 3.1 Explication 3.2 Exemple
syn seq=x syn + ack seq=y ack= x+1 ack seq=x+1 ack=y+1 Rappel de protocole TCP - ouverture de la connexion TCP machine 1 machine 2 syn seq=x Temps syn + ack seq=y ack= x+1 Une ouverture de connexion TCP commence toujours par une séquence syn synack ack. La machine 1 envoie un segment SYN avec une séquence X La machine 2 répond par un SYN + ACK avec un numéro de séquence Y et un ack égal a X+ 1 La machine 1 confirme avec un ACK de le numéro de séquence est le ack précédent et un ack égal a Y+ 1 ack seq=x+1 ack=y+1
data seq=x ack ack seq=y ack= n+1 Rappel de protocole TCP – échange des données machine 1 machine 2 data seq=x ack Temps ack seq=y ack= n+1 Pendant le transfert de données les numéros de séquence sont utilisés pour ordonner les échanges et détecter les échanges perdus. La machine 1 envoie les données avec un numéro de séquence. La machine 2 retourne une séquence y avec une autre séquence ACK contenant la longueur du paquet reçu incrémenté de 1
Fin seq=x Fin seq=y ack=x+1 ack ack=y+1 Rappel de protocole TCP - fermeture de la connexion TCP machine 1 machine 2 Temps Fin seq=x Fin seq=y ack=x+1 La fermeture d’un flux TCP se termine par la séquence fin,ack fin,ack ack La machine 1 envoie un FIN avec une séquence X La machine 2 revoie un ACK égal a la séquence de la trame précédente + 1 La machine 2 envoie un FIN avec une séquence Y La machine 1 revoie un ACK égal a la séquence de la trame précédente + 1 ack ack=y+1
Etude de cas - ouverture de la connexion TCP ouverture de connexion
Etude de cas – échanges TCP (requête) ouverture de connexion échanges de la requête données de la trame 882:
Etude de cas – échange TCP (réponse) ouverture de connexion échanges de la requête échanges de la réponse données de la trame 884:
Etude de cas – fermeture de la connexion TCP ouverture de connexion échanges de la requête échanges de la réponse Fermeture de la connexion
En savoir plus Site web de Wireshark https://www.wireshark.org/ Explication de la commande TCPDUMP https://danielmiessler.com/study/tcpdump/