WireShark : sniff/analyse réseau

WireShark est un outil puissant qui permet de capture les paquets passant par une interface (sniff) et d’analyser les captures à la recherche d’occurrence ou pour effectuer des statistiques.
WireShark peut donc être utilisé pour analyser le réseau ou éventuellement déterminer si une machine est infectée en analysant les connexions effectuées par les malwares.
Bref l’usage de WireShark est multiple, cette page vous donne quelques aperçus de ses possibilités.

L’adresse du site WEB : http://www.wireshark.org/

Le principe et présentation de WireShark

Le principe fonctionne comme tout autre outil d’analyse qui existe, on capture les paquets d’une interface et on applique des filtres pour capture et trouver ce qui nous interresse.
WireShark permet d’appliquer des filtres directement à la capture ou sur les résultats de la capture.

Bien entendu, en ce qui concerne le contenu des paquets (les données), seules les connexions non cryptées pourront être analysées, on voit donc l’importance d’utiliser les connexions sécurisées surtout lors des authentification (échange de mot de passe) – voir la page : Quand et Pourquoi crypter/chiffrer ses connexions

Notez qu’il existe une autre multitude d’outil pour capture les paquets qui passent par une interface; notamment sous GNU/Linux (ngrep, tshark, tcpdump etc). Tous ne sont pas équivalents.
Voici par exemple une capture de ngrep en action, où l’on voit bien les connexion WEB (et pas que WEB) étalibies avec les GET :

WireShark : sniff/analyse réseau

L’interface de WireShark est assez simple, nous avons :

  • 1/ Le filtre qui permet de filtrer les résultats qui se trouvent en 2
  • 2/ Les paquets capturés
  • 3/ Les informations sur le paquets capturés avec les différentes couches de transport

Le menu Capture permet de démarrer une capture (ou la première irone de barre d’icône), le menu Analyse permet d’effectuer quelques filtres et ouvrir des complètement d’informations sur des paquets.
Enfin le menu Statistics offre des statistiques allant jusqu’à la possibilité d’effectuer des graphiques.

Les lignes ont des couleurs différentes selon le type de connexion, par exemple:

  • En vert les connexions HTTP.
  • En gris, les connexion SYN.
  • En jaune, les requetes netbios.
  • Les requêtes DNS sont en bleus.
  • En cyant, les connexions TCP classiques

WireShark : Sniff/Analyse réseau

Jouer avec les filtres

Les filtres sont particulièrement intéressant lorsque la capture contient une multitude de paquet pour trouver ce que l’on cherche.
Il est possible d’ajouter un filtre lors de l’analyse à partir du bouton Options.

Les filtres peuvent être enregistrés pour une utilisation ultérieure.

WireShark : sniff/analyse réseau

De même il est possible à partir du bouton Filtre d’appliquer des filtres sur l’affichage des paquets.
Le bouton Expression permet de lister les filtres.
Vous pouvez les retrouver aussi dans la documentation sur le site de WireShark : http://www.wireshark.org/docs/dfref/

Les commutateurs communs :

  • == : dont l’occurrence est égale à
  • != : dont l’occurrence est différente de
  • > ou >= : strictement supérieur ou supérieur et égal
  • < ou <= : strictement inférieur ou strictement inférieur

Vous pouvez enfin insérer plusieurs filtres avec and ou or

Quelques filtres

Voici quelques filtres sur les IP :

  • ip.addr == 192.168.1.27 : pour avoir que les paquets de cette ip
  • ip.addr != 38.101.166.24 : pour NE PAS avoir les paquets de cette ip
  • ip.src == 38.101.166.24 : pour filtrer sur les ip sources
  • ip.dst == 38.101.166.24 : pour filtrer sur les ip distantes

WireShark : Sniff/Analyse réseau

Vous pouvez ensuite filtrer sur le protocole HTTP pour avoir que les GET par exemple: ip.addr == 192.168.1.26 and http.request.method == « GET »

WireShark : Sniff/Analyse réseauVous pouvez aussi filtrer les requêtes DNS ou les connexions SYN pour cela : ip.addr == 192.168.1.139 and not dns and not tcp.seq == 0

Bref, WireShark possède une multitude de filtrer pour effectuer vraiment ce que l’on veux.
A vous ensuite de chercher dans les expressions fournies.

TCP Stream

WireShark permet ensuite l’analyse des paquets et notamment de suivre les données par les séquences Stream.
En effectuant un clic droit sur un paquet puis Follow TCP Stream, WireShark vous permet de visualiser les données (en rose, la connexion cliente et en bleu la réponse du serveur).
WireShark permet ensuite de filtrer les paquents ayant cette même séquence (ex : tcp.stream eq 1).

WireShark : Sniff/Analyse réseau

Pour filtrer sur les paquets de votre choix , vous devez regarder l’index dans les Transmission Control Protocol => tcp.stream eq index
Pour plus d’informations sur les Transmission Control Protocole, se rendre sur la page suivante de Wikipedia : http://en.wikipedia.org/wiki/SCTP_packet_structure

WireShark : Sniff/Analyse réseau

Capture et Malwares

On peux ensuite utiliser WireSharck pour déterminer si une machine est infectée.
Par exemple les Datas ci-dessous montre une connexion IRC d’un botnet, on y voir les ordres de téléchargement via les commandes .asc et .http

WireShark : Sniff/Analyse réseau

Ici le téléchargement d’un PE (fichier executable), on voit le HTTP GET en haut avec le nom du fichier word.exe et en bleu la réponse du serveur qui fourni le fichier exécutable.

WireShark : Sniff/Analyse réseau

Un SPAMBot en action :

WireShark : Sniff/Analyse réseau

WireShark : Sniff/Analyse réseau

Statistiques

WireSharck offre aussi la possibilité d’effectuer des statistiques à partir du menu Statistics
Cela peut à des statistiques généréals (protocoles utilisé, paquets envoyés etc) à aller de la longueur des paquets ou des statistiques sur les IP de destination/source.
Les statistiques prennent en compte les filtres, il est alors tout à fait possible d’effectuer les statistiques sur une machine.

Menu Statistics / Conversation / TCP montre les communications par IP et protocoles et le volume échangé.
Notez le bouton Follow Stream qui permet de filtrer ensuite sur la ligne sélectionnée.

WireShark : Sniff/Analyse réseau

Le menu Statistics / Protocol Hierarchy donne une liste des protocoles utilisés avec le pourcentage du volume échangé.

WireShark : Sniff/Analyse réseau

Enfin il est aussi possible de créer des graphiques (Menu Statistics / IO Graphs).

La capture ci-dessous montre le volume échangé de la machine 192.16.1.27 par rapport à l’activité globale capturé.

WireShark : Sniff/Analyse réseau

Le graphique  ci-dessous lui montre l’activité SMTP de la même machine par rapport à son activité globale.
Le graphique montre bien la mise en route du Spambot.

WireShark : Sniff/Analyse réseau

Comment lire d'autres tutoriels de malekal.com ?

Si le site vous a aidé, svp, débloquez les bloqueurs de publicités, n'hésitez pas non plus à partager l'article ou le site sur les réseaux sociaux.

Pour pouvoir lire plus d'articles et tutoriels, utilisez le menu en haut du site. Plein d'articles et tutos utiles vous attendent !

Besoin d'aide ?

Posez votre question ou soumettez votre problème sur le forum malekal.com pour obtenir une aide efficace : Aller sur le forum malekal.com
(Visited 1 598 times, 6 visits today)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *