Comment utiliser les filtres dans Wireshark

Wireshark est un logiciel libre et open source (FOSS) et il est développé par une communauté de développeurs enthousiastes. Wireshark (anciennement Ethereal) est utilisé pour capturer et étudier le trafic sur un réseau. Avec Wireshark, on peut voir ce qui se passe sur son réseau : Tu peux voir d’où vient le trafic et où il va. Si tu travailles dans un environnement de production, tu vas recevoir beaucoup de trafic. Il sera très fastidieux d’inspecter ce trafic sans connaître les fonctionnalités des filtres de Wiresharks. Grâce aux filtres, tu peux voir exactement le type de trafic que tu veux et tout le reste sera supprimé de la scène.

Qu’est-ce que nous allons couvrir ?

Dans ce guide, nous allons explorer comment créer et appliquer efficacement des filtres dans Wireshark. Commençons maintenant.

Présentation des filtres Wireshark

Les filtres Wireshark ont pour but de simplifier ta recherche de paquets. Par exemple, si tu veux voir uniquement le trafic TCP ou les paquets provenant d’une adresse IP spécifique, tu dois appliquer les filtres appropriés dans la barre de filtres. Wireshark ne comprend pas les phrases simples « Filtre le trafic TCP » ou « Montre-moi le trafic de la destination X ». Tu dois donc apprendre une syntaxe et des règles compliquées pour appliquer ces filtres.

Il existe essentiellement deux types de filtres dans Wireshark : Le filtre de capture et le filtre d’affichage. Il y a une différence entre la syntaxe des deux et dans la façon dont ils sont appliqués.

Les filtres de capture sont appliqués avant le début de l’opération de capture. De cette façon, seul le trafic que tu souhaites visualiser est enregistré. Ce filtre ne peut pas être modifié après le début de l’opération de capture. Les filtres d’affichage, en revanche, sont appliqués sur tous les paquets capturés. Ils peuvent être annulés et modifiés ultérieurement (ils peuvent être appliqués pendant une capture en cours).

Dans le filtre d’affichage, la capture est en fait stockée dans un tampon de trace. Ainsi, il ne cache que le trafic qui n’a pas d’importance pour toi et ne montre que celui qui t’intéresse.

Écrire un filtre de capture

Commençons par le filtre de capture. Tu trouveras le filtre de capture sur le tout premier écran après avoir lancé Wireshark :

Filtre de capture
Le filtre sera appliqué à l’interface sélectionnée. Un autre moyen est d’utiliser le menu Capture et de sélectionner le sous-menu Options (1).

Menu Capture

Tu peux aussi cliquer sur l’icône de l’engrenage (2). Dans les deux cas, la fenêtre ci-dessous s’affichera :

Capture Menu Options
Dans la zone de texte intitulée ‘Entrer un filtre de capture’, nous pouvons écrire notre premier filtre de capture. Mais si tu veux, tu peux utiliser l’icône de marque-page pour utiliser les filtres préfabriqués.

Les filtres de capture sont écrits dans le format de filtre libpcap. Ils sont construits à partir d’une séquence d’expressions primitives. Ces expressions sont reliées par des conjonctions (et/ou) et peuvent commencer par un ‘pas’. Voici la syntaxe :

[not] primitive [and|or [not] primitive ...]

Pour illustrer cela, suppose que nous voulons capturer le trafic UDP en provenance ou à destination de l’hôte 192.168.18.161. L’expression du filtre de capture, dans ce cas, sera :

udp et hôte 192.168.18.161

Capture Menu Expression
Certaines des primitives à utiliser dans l’expression ci-dessus peuvent être :

  1. [src|dst] host <host> : Utilisé pour filtrer sur une adresse IP ou un nom d’hôte. Elle peut être précédée de src|dst pour identifier l’adresse source ou de destination.
  2. ether [src|dst] host <ehost> : Utilisé pour le filtrage sur les adresses d’hôtes Ethernet. Il peut également être précédé de src|dst pour identifier l’adresse source ou de destination.
  3. gateway hôte <hôte> : Utilisé pour filtrer les paquets qui ont utilisé l’hôte comme passerelle.
  4. [src|dst] net <net> [{mask <mask>}|{len <len>}] : Utilisé pour filtrer sur les numéros de réseau. Il peut aussi être précédé de src|dst pour identifier l’adresse source ou de destination.
  5. [tcp|udp] [src|dst] port <port> : Utilisé pour filtrer sur les numéros de port TCP et UDP.

Tu peux trouver toutes les primitives pour l’expression ci-dessus dans la liste ici.

Écrire un filtre d’affichage

Pour écrire un filtre d’affichage, une chose dont tu auras besoin est la connaissance des opérateurs booléens. Oui, tu as raison, nous parlons des opérations de base AND, OR et NOT. En les utilisant, nous pouvons aussi combiner plusieurs requêtes de filtre en une seule. Par exemple, si nous recherchons le trafic TCP et les paquets utilisant le port 80, nous pouvons écrire le filtre comme suit :

tcp et tcp.port == 80

Une autre façon est d’utiliser l’expression

tcp && tcp.port == 80

Filtre d'affichage

Nous avons listé ci-dessous les expressions booléennes couramment utilisées dans les filtres Display :

1. == ou eq (Opération égale)

2. && ou and (opération Et)

3. || (double pipe) ou ou (opération Or)

Conclusion

Dans ce guide, nous avons appris « comment utiliser les filtres dans le logiciel Wireshark ». Nous te recommandons d’explorer les filtres Wireshark en effectuant des exercices pratiques. De cette façon, tu pourras mieux comprendre cet outil. Si tu es intéressé(e), tu peux en savoir plus sur Wireshark en visitant le site officiel de Wireshark à l’adresse https://www.wireshark.org.

Vous aimerez aussi...