Analyser et exporter le trafic réseau avec Tshark
Dans cette étape, nous allons nous concentrer sur la manière d'exporter le trafic réseau dans différents formats et d'effectuer une analyse de base du trafic en utilisant Tshark. Ces compétences sont cruciales car elles vous permettent de partager les données capturées avec vos collègues ou de les utiliser dans d'autres outils. À la fin de cette section, vous serez en mesure de gérer différents formats de fichiers et d'extraire des informations précieuses du trafic réseau.
Wireshark, un analyseur de protocoles réseau bien connu, prend en charge plusieurs formats de fichiers de capture. Chaque format a ses propres caractéristiques uniques, il est important de les comprendre car elles déterminent comment les données peuvent être utilisées par la suite.
- pcapng : C'est le format par défaut utilisé par Wireshark. Il prend en charge plusieurs interfaces et dispose de fonctionnalités avancées. C'est un excellent choix lorsque vous avez besoin de capturer des scénarios réseau complexes.
- pcap : Le format classique. Il est compatible avec les outils plus anciens, mais il a moins de fonctionnalités que pcapng. Si vous avez besoin de travailler avec des systèmes hérités, ce format pourrait être votre premier choix.
- csv : Valeurs séparées par des virgules. Ce format est très utile lorsque vous souhaitez importer les données dans des tableurs pour une analyse plus approfondie.
- json : JavaScript Object Notation. C'est idéal pour l'analyse programmée, car il peut être facilement analysé par les langages de programmation.
- text : Un format texte brut qui est lisible par l'homme. Il est utile lorsque vous souhaitez visualiser rapidement les données sans outils spéciaux.
Pour changer le format d'un fichier de capture, vous pouvez utiliser l'option -F
dans Tshark. La structure générale de la commande est la suivante :
tshark -r <input_file> -F <format> -w <output_file>
Ici, -r
spécifie le fichier d'entrée, -F
définit le format de sortie et -w
définit le fichier de sortie.
Prenons un exemple et exportons notre capture au format pcap :
tshark -r /home/labex/project/capture.pcapng -F pcap -w /home/labex/project/export.pcap
Lorsque cette commande s'exécute avec succès, vous ne verrez aucune sortie à l'écran. Pour confirmer que l'exportation a réussi, vous pouvez utiliser la commande ls
pour lister les détails du fichier exporté :
ls -l /home/labex/project/export.pcap
Vous devriez voir une sortie similaire à ceci :
-rw-r--r-- 1 labex labex 22468 Jan 27 12:45 /home/labex/project/export.pcap
Analyse des statistiques de protocole
Tshark n'est pas seulement utile pour exporter des fichiers, mais aussi pour générer diverses statistiques sur le trafic capturé. Explorons quelques-unes de ces options d'analyse statistique.
Statistiques de la hiérarchie des protocoles
Si vous souhaitez voir comment différents protocoles sont répartis dans votre capture, vous pouvez utiliser la commande suivante :
tshark -r /home/labex/project/capture.pcapng -z io,phs
L'option -z
est utilisée pour spécifier le type de statistiques. Dans ce cas, io,phs
signifie statistiques de la hiérarchie des protocoles. La sortie montrera la hiérarchie des protocoles et le pourcentage de paquets pour chaque protocole.
Protocol Hierarchy Statistics
|
+ Ethernet
+ Internet Protocol Version 4
+ Transmission Control Protocol
+ Transport Layer Security
+ Hypertext Transfer Protocol Secure
+ User Datagram Protocol
+ Domain Name System
Statistiques des conversations
Pour analyser les conversations entre les points terminaux du réseau, vous pouvez utiliser la commande suivante :
tshark -r /home/labex/project/capture.pcapng -z conv,tcp
Cette commande se concentre sur les conversations TCP. Elle montre des statistiques telles que les points terminaux impliqués, le nombre de paquets échangés et le nombre total d'octets transmis.
TCP Conversations
| <- | | -> | | Total | Relative | Duration |
| Frames Bytes | | Frames Bytes | | Frames Bytes | Start | |
192.168.1.100:43210 <-> 93.184.216.34:443 24 18765 18 4532 42 23297 0.000000000 8.2345
Statistiques des requêtes HTTP
Si votre capture contient du trafic HTTP, vous pouvez analyser les requêtes HTTP en utilisant la commande suivante :
tshark -r /home/labex/project/capture.pcapng -z http,tree
Cette commande organise les requêtes HTTP par URI et montre le nombre de requêtes pour chaque URI.
HTTP/Requests:
/index.html 1 requests
/images/logo.png 2 requests
Exportation dans différents formats texte
En plus des formats binaires, Tshark peut également exporter des données dans des formats texte, qui sont souvent plus faciles à analyser.
Pour exporter des champs spécifiques de la capture dans un fichier CSV, vous pouvez utiliser la commande suivante :
tshark -r /home/labex/project/capture.pcapng -T fields -e frame.number -e ip.src -e ip.dst -e tcp.srcport -e tcp.dstport -E header=y -E separator=, > /home/labex/project/tcp_summary.csv
Ici, -T fields
spécifie que nous voulons exporter des champs spécifiques. L'option -e
est utilisée pour définir les champs que nous voulons exporter, tels que le numéro de trame, les adresses IP source et destination et les ports TCP source et destination. -E header=y
ajoute un en-tête au fichier CSV et -E separator=,
définit le séparateur comme une virgule.
Après avoir exporté les données dans un fichier CSV, vous pouvez rapidement visualiser les premières lignes du fichier en utilisant la commande head
:
head -5 /home/labex/project/tcp_summary.csv
La sortie pourrait ressembler à ceci :
frame.number,ip.src,ip.dst,tcp.srcport,tcp.dstport
1,192.168.1.100,93.184.216.34,43210,443
2,93.184.216.34,192.168.1.100,443,43210
3,192.168.1.100,93.184.216.34,43210,443
...