Outils pour utilisateurs

Outils du site


bloc3s1:wiresharkmessagerie

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
bloc3s1:wiresharkmessagerie [2020/11/12 20:53]
techer.charles_educ-valadon-limoges.fr
bloc3s1:wiresharkmessagerie [2020/11/27 10:38]
techer.charles_educ-valadon-limoges.fr [Installation de Wireshark dans la VM Ubuntu]
Ligne 1: Ligne 1:
-====== Visualiser les échanges de courriels chiffrés avec Wireshark ======+====== Visualiser avec Wireshark les échanges chiffrés avec les serveurs IMAP et SMTP ======
 ===== Présentation ===== ===== Présentation =====
 Un **analyseur de trame** est un outil **de base** de l'informaticien car il permet  de comprendre ce qu'il se passe à un niveau très bas. Il permet aussi aussi de mettre en évidence de nombreux concepts théoriques du cours. Un **analyseur de trame** est un outil **de base** de l'informaticien car il permet  de comprendre ce qu'il se passe à un niveau très bas. Il permet aussi aussi de mettre en évidence de nombreux concepts théoriques du cours.
Ligne 26: Ligne 26:
 {{ :bloc3s1:wireshark_01.png?500 |}} {{ :bloc3s1:wireshark_01.png?500 |}}
  
 +  * **Autorisez** les utilisateurs non privilégiés à **utiliser Wireshark** :
 + {{ :bloc3s1:wireshark_02.png?500 |}}
  
-Autorisez  +  * **Ajoutez** le compte utilisateur voulu au groupe **wireshark** pour lui permettre d'utiliser toutes les fonctionnalités de Wireshark : 
- {{ :bloc3s1:wireshark_02.png |}}+<code shell> 
 +$ sudo usermod -aG wireshark comptevoulu 
 +</code> 
 +ou le compte qui a ouvert la session (la commande whoami permet de connaitre l'utilisateur qui a ouvert la session : 
 +<code shell> 
 +$ sudo usermod -aG wireshark $(whoami) 
 +</code> 
 +  * Fermez puis réouvrez votre session pour actualiser vos droits. 
 +  * Lancez un Terminal et vérifiez que vous êtes bien dans le groupe wireshark avec la commande suivante : 
 +<code shell> 
 +$ groups 
 +</code> 
 + 
 +<WRAP center round info> 
 +En cas d'**erreur de configuration de Wireshark,** relancez l'assistant de configuration avec la commande suivante : 
 +<code shell> 
 +$ sudo dpkg-reconfigure wireshark-common 
 +</code> 
 +</WRAP> 
 + 
 + 
 +===== Prise de contact ===== 
 + 
 +Lancez le logiciel qui se présente ainsi (la carte réseau **enp0s3** connectée au réseau est encadrée en rouge): 
 +{{ :bloc3s1:wireshark_03.png?500 |}} 
 + 
 + 
 +Vous pouvez démarrer une capture en cliquant tout simplement sur l'interface réseau qui vous intéresse. Vous ne verrez donc que le trafic réseau vu par cette carte réseau.  
 + 
 +  * **Démarrez une capture** avec l'icône en forme d'aileron de requin en haut à gauche. 
 +  * Au bout de quelques instants vous verrez des paquets réseau apparaître dans la fenêtre, ce qui montre que même si vous ne faites rien, il y a des informations qui circulent sur le réseau ! 
 +  * **Arrêtez** la capture des trames :  
 +  * {{ :bloc3s1:wireshark_04.png?500 |}} 
 + 
 +Wireshark permet de donner des informations très détaillées. Examinez l'écran principal du logiciel : 
 +{{ :bloc3s1:wireshark_05.png?500 |}} 
 + 
 +On observe en trois parties :  
 +  * 1. La **liste des trames Ethernet capturées**. Elles sont chacune numérotées et horodatées par Wireshark (ces données ne figurent donc pas dans la trame d'origine). 
 +  * 2. Pour chaque trame, sa **structure** est présentée sous une forme **hiérarchique** (ainsi ce que vous voyez dans le volet 2 est le détail de la trame numéro 2) 
 +  * 3. Le volet 3 est la même chose que le volet 2 mais sous une forme **brute** non structurée avec une présentation ASCII et hexadécimale. Vous pouvez la présenter en binaire (clic droit dans le volet 3). 
 + 
 +===== Examen détaillé ===== 
 + 
 +Examinez en détail le volet 2. Vous pouvez cliquer sur les croix pour développer les contenus. Ce volet met en évidence le phénomène **d'encapsulation** : 
 + 
 +Le premier élément concerne la **trame** proprement dite (taille, temps, etc.) : 
 +{{ :bloc3s1:wireshark_06.png?500 |}} 
 + 
 +Ensuite, en montant d'un cran est présentée la partie liée à **Ethernet**. On retrouve les adresses physiques de **destination** et de **source**, également le type trame de niveau supérieur (ici IP **0x0800**) : 
 +{{ :bloc3s1:wireshark_07.png?500 |}} 
 + 
 +A la couche supérieure, c'est la partie  IP : 
 +{{ :bloc3s1:wireshark_08.png?500 |}} 
 + 
 +On retrouve les **adresses IP source** et **destination du paquet**. De plus, certaines données correspondent à des bits d'un octet particulier (**differentiated services field**). Des données techniques comme la longueur du paquet, le numéro de séquence, le temps à vivre (**TTL** ou Time To Live), l'identité du protocole supérieur (**UDP**) sont nécessaires au fonctionnement de cette couche. 
 + 
 +En montant encore d'un niveau on observe la partie **transport**. Ici il s'agit de **UDP** qui est un protocole simple sans gestion des erreurs, son contenu est beaucoup plus simple que **TCP** : 
 +{{ :bloc3s1:wireshark_09.png?500 |}} 
 + 
 +Comme à chaque fois, une information concernant le protocole de niveau supérieur (ici **ssdp** pour Simple Service Discovery Protocol) est intégré. Nous retrouvons également la notion de **port source** et de **destination** mais aussi de **checksum** qui permet le contrôle d'erreur. 
 + 
 +Et enfin, on aborde la partie **application**. vous remarquerez que **Wireshark** sait mettre en relation les **données structurées** et les **données brutes**. Ainsi, sur n'importe quelle couche du paquet, si vous sélectionnez un élément, celui-ci est mis en évidence dans le dernier volet : 
 +{{ :bloc3s1:wireshark_10.png?500 |}} 
 + 
 +Pour information, le paquet présenté ici correspond au **protocole HTTP** et à la demande **GET** de téléchargement de la feuille de style **shadowbox.css** de la page d'accueil du site l'Académie de Limoges. 
 + 
 +===== Filtres ===== 
 + 
 +Lorsque vous capturez des trames sur un réseau, vous pouvez avoir beaucoup de **trame** car tous les ordinateurs du réseau **communiquent en permanence** et les données sont découpées, segmentées, pour être transportées dans des trames Ethernet dont la longueur maximale est de 1500 octets. Il est donc important de pouvoir **filtrer** une capture sur différents critères. Parmi les plus fréquents, nous avons les **adresses source** ou **destination** de niveau 2 ou 3 et le protocole. 
 + 
 +Dans copie d'écran ci-dessous, vous voyez qu'il existe une zone **filter** qui permet justement de saisir des requêtes avec une **syntaxe** propre à Wireshark (mais qui s'inspire du langage C). 
 + 
 +Par exemple, pour filtrer sur l'adresse MAC source : 08:00:27:ca:9a:e0 (**à adapter à ce que vous avez réellement dans votre capture**) 
 +Dans le champ Filter saisissez : **eth.src==08:00:27:ca:9a:e0** et cliquez sur le bouton **Apply**; Seules 60% des trames capturées sont affichées. 
 +{{ :bloc3s1:wireshark_11.png?500 |}} 
 + 
 +Lorsque vous avez commencé à taper **eth.** Vous avez vu que de nombreux autres champs sont disponibles. 
 + 
 +Vous pouvez faire de même avec les **adresses IP**, par exemple l'adresses source **192.168.1.47**. Seules 30% des trames capturées sont affichées. 
 + 
 +Dans le champ Filter saisissez : **ip.src==192.168.1.47** 
 +{{ :bloc3s1:wireshark_12.png?500 |}} 
 + 
 +Pour un filtre basé sur les protocoles, saisissez tout simplement : 
 +  * Filter : **http** ou **ssh** ou **dns** ou **smtp** 
 +{{ :bloc3s1:wireshark_13.png?500 |}}
  
-Installez Wireshark. Durant l'installationaccepter d'installer WinPcap 4.1.+Bien sûrles filtres peuvent être **cumulés**, par exemple **protocole** et **adresse source** : 
 +  * Filter : **http&&ip.src==192.168.1.47** (3% des trames capturées) 
 +{{ :bloc3s1:wireshark_14.png?500 |}}
  
 +===== Visualisation de l'envoi et de la réception des courriels avec utilisation du protocole TLS =====
 +Rédigez un court document contenant des copies d'écran de capture de trame avec Wireshark montrant que les échanges avec les serveurs **IMAP et SMTP sont chiffrés** avec le** protocole TLS**.
 +Pour cela  : 
 +  * **recherchez les ports réseaux** TCP utilisés par les **protocoles IMAP et SMTP** ;
 +  * utilisez un **filtre** avec ces valeurs et celle de l'**adresse IP** de votre VM.
 ====== Retour Accueil Bloc3 ====== ====== Retour Accueil Bloc3 ======
  
   *  [[bloc3S1:accueil|Bloc3]]   *  [[bloc3S1:accueil|Bloc3]]
  
bloc3s1/wiresharkmessagerie.txt · Dernière modification: 2020/11/27 10:38 de techer.charles_educ-valadon-limoges.fr