Lire les données de paquets dans Tshark

WiresharkWiresharkBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à utiliser l'outil en ligne de commande tshark de Wireshark pour analyser les captures de paquets réseau. Vous allez pratiquer des commandes essentielles telles que -r pour lire les fichiers de capture, -V pour obtenir une sortie détaillée et -c pour limiter le nombre de paquets tout en travaillant avec un fichier PCAP d'exemple.

Grâce à des exercices pratiques, vous examinerez les en-têtes de paquets, identifierez les informations clés du réseau, notamment les adresses IP et les protocoles, et interpréterez différents formats de sortie. Ce laboratoire offre une expérience pratique des fonctionnalités principales de tshark pour une analyse efficace du trafic réseau.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL wireshark(("Wireshark")) -.-> wireshark/WiresharkGroup(["Wireshark"]) wireshark/WiresharkGroup -.-> wireshark/display_filters("Display Filters") wireshark/WiresharkGroup -.-> wireshark/packet_analysis("Packet Analysis") wireshark/WiresharkGroup -.-> wireshark/commandline_usage("Command Line Usage") subgraph Lab Skills wireshark/display_filters -.-> lab-548937{{"Lire les données de paquets dans Tshark"}} wireshark/packet_analysis -.-> lab-548937{{"Lire les données de paquets dans Tshark"}} wireshark/commandline_usage -.-> lab-548937{{"Lire les données de paquets dans Tshark"}} end

Ouvrir un fichier avec -r capture.pcap

Dans cette étape, nous allons explorer comment analyser le trafic réseau pré-enregistré en utilisant tshark, le puissant outil en ligne de commande de Wireshark. Lorsque nous travaillons avec l'analyse réseau, nous devons souvent examiner des données précédemment capturées plutôt que de capturer le trafic en direct. L'option -r (qui signifie "read" - lire) nous permet de faire exactement cela en spécifiant un fichier de capture de paquets à analyser.

Avant de commencer, assurons-nous que nous travaillons au bon endroit. Dans un environnement basé sur un terminal, il est crucial de se trouver dans le bon répertoire où nos fichiers sont stockés :

cd ~/project

L'environnement LabEx est livré avec tshark pré-installé, qui est la version en ligne de commande de Wireshark. Pour confirmer qu'il est disponible et vérifier quelle version nous utilisons (une bonne pratique lorsque vous travaillez avec n'importe quel outil), exécutez :

tshark --version

Vous devriez voir des informations de version détaillées apparaître, confirmant que tshark est correctement installé et prêt à être utilisé.

Pour cette démonstration, nous allons travailler avec un exemple de fichier de capture réseau. Il est déjà téléchargé dans /home/labex/project/capture.pcap.

Nous sommes maintenant prêts à examiner le trafic réseau capturé. La commande de base pour lire et afficher le contenu de notre fichier de capture est :

tshark -r capture.pcap

Cette commande traite le fichier et affiche une vue récapitulative de tous les paquets capturés. Chaque ligne dans la sortie représente un paquet réseau et comprend plusieurs informations importantes qui nous aident à comprendre l'activité du réseau :

  • Numéro de paquet : L'identifiant séquentiel de chaque paquet
  • Horodatage (Timestamp) : Le moment où le paquet a été capturé (par rapport au début de la capture)
  • IP source : D'où provient le paquet
  • IP de destination : Où le paquet allait
  • Protocole : Le protocole réseau utilisé (TCP, UDP, etc.)
  • Longueur (Length) : La taille du paquet en octets (bytes)
  • Info : Une brève description du but ou du contenu du paquet

Voici à quoi pourrait ressembler une sortie typique, montrant une connexion TCP en cours d'établissement :

1 0.000000 192.168.1.1 → 192.168.1.2 TCP 66 443 → 49234 [SYN] Seq=0 Win=64240 Len=0
2 0.000123 192.168.1.2 → 192.168.1.1 TCP 66 49234 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0

Cette vue initiale nous donne un aperçu de haut niveau de la communication réseau contenue dans notre fichier de capture, sur laquelle nous nous appuierons dans les étapes suivantes.

Afficher le résumé des paquets avec la sortie par défaut

Dans cette étape, nous allons explorer comment lire et comprendre le résumé de base des paquets que tshark affiche par défaut. C'est votre point de départ pour l'analyse du trafic réseau, présentant des informations essentielles sur chaque paquet dans un format structuré.

Avant de commencer, assurons-nous que nous sommes dans le bon répertoire de travail où se trouve notre fichier de capture :

cd ~/project

La sortie par défaut de tshark présente le trafic réseau en colonnes, chacune nous informant d'une chose importante sur la communication :

  1. Numéro de paquet : L'identifiant séquentiel de chaque paquet dans la capture
  2. Horodatage : Lorsque le paquet a été capturé, par rapport au premier paquet
  3. Adresse source : D'où vient le paquet (adresse IP)
  4. Adresse de destination : Où le paquet se dirige (adresse IP)
  5. Protocole : Le protocole réseau utilisé (TCP, UDP, etc.)
  6. Longueur : La taille du paquet en octets
  7. Informations : Détails supplémentaires spécifiques au protocole

Regardons les 5 premiers paquets pour voir cela en action :

tshark -r capture.pcap -c 5

Exemple de sortie :

    1 0.000000 192.168.1.1 → 192.168.1.2 TCP 66 443 → 49234 [SYN] Seq=0 Win=64240 Len=0
    2 0.000123 192.168.1.2 → 192.168.1.1 TCP 66 49234 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0
    3 0.000145 192.168.1.1 → 192.168.1.2 TCP 54 443 → 49234 [ACK] Seq=1 Ack=1 Win=64240 Len=0
    4 0.000567 192.168.1.1 → 192.168.1.2 TLSv1 583 Client Hello
    5 0.000789 192.168.1.2 → 192.168.1.1 TCP 54 49234 → 443 [ACK] Seq=1 Ack=530 Win=65535 Len=0

Pour mieux comprendre ce qui se passe dans notre capture de réseau, nous pouvons compter combien de paquets appartiennent à chaque type de protocole. Cela permet d'identifier quels protocoles sont les plus actifs dans notre trafic réseau :

tshark -r capture.pcap -qz io,phs

Cette commande génère une table de hiérarchie des protocoles, montrant la répartition des différents protocoles dans votre fichier de capture, ce qui est particulièrement utile lors de l'analyse de modèles de trafic réseau complexes.

Afficher les champs détaillés avec -V

Dans cette étape, nous allons explorer comment afficher des détails complets sur les paquets en utilisant le paramètre -V (verbose, c'est-à-dire verbeux) de Wireshark. Cela est particulièrement utile lorsque vous avez besoin d'examiner toutes les couches de protocole et leurs champs au sein d'un paquet réseau.

Avant de commencer, assurons-nous que nous sommes dans le bon répertoire de travail où se trouve notre fichier de capture de paquets :

cd ~/project

Le paramètre -V révèle la structure complète de chaque paquet, affichant toutes les couches de protocole, depuis la trame physique jusqu'aux données d'application. Cette vue hiérarchique vous aide à comprendre comment différents protocoles fonctionnent ensemble dans la communication réseau. Regardons le premier paquet de notre fichier de capture :

tshark -r capture.pcap -V -c 1

La sortie affichera des informations détaillées sur chaque couche de protocole. Voici un exemple de ce que vous pourriez voir (abrégé pour plus de clarté) :

Frame 1: 66 bytes on wire (528 bits), 66 bytes captured (528 bits)
    Encapsulation type: Ethernet (1)
    Arrival Time: Jun  8, 2023 10:15:32.000000000 UTC
    [Time shift for this packet: 0.000000000 seconds]
    Epoch Time: 1686219332.000000000 seconds
    [Time delta from previous captured frame: 0.000000000 seconds]
    [Time delta from previous displayed frame: 0.000000000 seconds]
    [Time since reference or first frame: 0.000000000 seconds]
    Frame Number: 1
    Frame Length: 66 bytes (528 bits)
    Capture Length: 66 bytes (528 bits)
    [Frame is marked: False]
    [Frame is ignored: False]
    [Protocols in frame: eth:ethertype:ip:tcp]
Ethernet II, Src: 00:11:22:33:44:55, Dst: aa:bb:cc:dd:ee:ff
    Destination: aa:bb:cc:dd:ee:ff
    Source: 00:11:22:33:44:55
    Type: IPv4 (0x0800)
Internet Protocol Version 4, Src: 192.168.1.1, Dst: 192.168.1.2
    Version: 4
    Header length: 20 bytes
    ...

Si vous ne voulez voir les détails que pour les paquets contenant un protocole spécifique (comme TCP), vous pouvez combiner -V avec le filtre d'affichage -Y. Cela vous permet de concentrer votre analyse sur un trafic réseau particulier :

tshark -r capture.pcap -V -Y "tcp" -c 1

Compter les paquets avec -c 100

Dans cette étape, nous allons explorer comment contrôler l'affichage des paquets dans Tshark en utilisant le paramètre -c. Cela est particulièrement utile lorsque vous travaillez avec de grands fichiers de capture et que vous n'avez besoin d'analyser qu'un échantillon de paquets.

Tout d'abord, naviguons jusqu'au répertoire de travail où se trouve le fichier de capture de paquets. Cela garantit que toutes les commandes fonctionneront avec le bon fichier :

cd ~/project

Le paramètre -c (abréviation de "count", c'est-à-dire "compter") limite le nombre de paquets que Tshark traitera et affichera. Par exemple, pour examiner seulement les 100 premiers paquets de notre fichier de capture :

tshark -r capture.pcap -c 100

Lors de l'analyse de types de trafic spécifiques, nous pouvons combiner le paramètre -c avec un filtre d'affichage en utilisant -Y. Cette commande affiche les 100 premiers paquets HTTP :

tshark -r capture.pcap -Y "http" -c 100

Si vous avez besoin de connaître le nombre total de paquets dans le fichier (pas seulement les 100 premiers), ce pipeline compte toutes les lignes de la sortie :

tshark -r capture.pcap | wc -l

Pour obtenir une répartition plus détaillée des protocoles dans votre capture, cette commande fournit un résumé de la hiérarchie des protocoles montrant le nombre de paquets pour chaque type de protocole :

tshark -r capture.pcap -qz io,phs

Résumé

Dans ce laboratoire, vous avez appris à utiliser l'outil en ligne de commande tshark de Wireshark pour analyser les captures de paquets réseau. Les exercices ont couvert l'ouverture de fichiers PCAP avec le paramètre -r, la vérification de l'installation via --version, et l'examen des champs de sortie par défaut, y compris les métadonnées des paquets et les informations sur les protocoles.

Vous avez également pratiqué l'interprétation du format structuré de résumé des paquets et l'utilisation du paramètre -c pour contrôler le volume de la sortie. Ces compétences constituent une base solide pour une analyse efficace du trafic réseau et une investigation des protocoles à l'aide de fichiers de capture enregistrés.