Ce logiciel va nous permettre d'examiner le flux de données échangées sur un canal de communication entre en client et un serveur grâce à la capture des paquets circulant sur le réseau physique entre les deux entités.
Remarque : Bien que Wireshark soit capable aussi bien de faire la capture et l'analyse, nous allons, sur le serveur Unix utilisé en Travaux Pratiques, utiliser un second outil afin de faire la capture. En effet Wireshark étant un logiciel graphique et notre serveur Unix ne proposant qu'une interface ligne de commande, Wireshark ne peut y être installé. Ce second outil est « tcpdump ». Il va nous permettre de sauvegarder la capture dans un fichier que l'on transfèrera ensuite sur notre ordinateur (Windows ou MAC) pour l'analyser avec Wireshark.
« tcpdump » est une commande qui a besoin des droits "root" (sous Unix) pour pouvoir espionner les interfaces réseaux. Depuis un utilisateur autre que "root", il convient donc de préfixer la commande par « sudo » (et d'obtenir, de la part de l'administrateur, le droit d'utiliser ainsi cette commande, ce qui est déjà le cas sur le serveur Unix de Travaux Pratiques de Junia).
Les arguments courants de la commande sont :
Les arguments suivants peuvent être ajoutés afin de limiter la capture :
Pour capturer (et inscrire dans le fichier capture.pcap) les communications passant sur l'interface loopback (nommée « lo »), on utilisera la commande suivante :
sudo tcpdump -i lo -w capture.pcap
Pour capturer (et inscrire dans le fichier capture.pcap) les communications avec le port 2000 de l'adresse IP 10.34.161.21, on utilisera la commande suivante :
sudo tcpdump -w capture.pcap 'host 10.34.161.21 and port 2000'
Pour transférer depuis le serveur d'adresse IP « 10.34.161.21 » le fichier « capture.pcap » se trouvant dans le répertoire « /home/isenXX », en utilisant les droit d'accès du l'utilisateur « isenXX », vers le répertoire courant de notre machine, on utilisera la commande suivante dans :
scp isenXX@10.34.161.21:/home/isenXX/capture.pcap .
Après avoir chargé dans Wirshark, le fichier de capture à analyser, on sélectionne un paquet correspondant au canal TCP que l'on souhaite espionner et, via le menu contextuel, on sélectionne l'item "Flux TCP".
On obtient alors la séquence complète du dialogue entre le client et le serveur avec l'écriture rouge pour le contenu envoyé par le client et en bleu celui envoyé par le serveur.