Outils d’analyse réseau

L’analyseur de trafic réseau ou analyseur de trame  est un outil essentiel pour comprendre le fonctionnement et déboguer les protocoles de communication sur les réseaux.

Cet article comprend deux parties. Dans un premier temps, nous parlerons des analyseurs de « trame bas niveau » comme Wireshark par exemple. Dans un deuxième temps, nous évoquerons ceux qui sont sur les couches les plus hautes, en général la couche application pour les protocoles WEB généralement.

 

Analyseurs de « trame bas niveau »

Wireshark

Microsoft Message Analyzer

NETSH

Dans un environnement Microsoft, il arrive parfois que nous souhaitions faire une analyse sans avoir à installer un produit ou quelconque driver spécifique pour effectuer cette analyse de trame. Il existe pourtant une méthode comme sous linux via TCPDUMP qui permet d’effectuer cette tache de manière native. Cette commande est présente depuis Windows 7 et Windows Server 2008 R2.

La commande s’effectue dans un « cmd » à exécuter en tant qu’administrateur:

netsh trace start persistent=yes capture=yes tracefile=c:\Logs\nettrace.etl

Dans cette commande, nous précisons capture=yes pour capturer le trafic réseau sur l’ensemble des interfaces de la machine.Le commutateur persistent=yes permet de prendre une trace au redémarrage d’une machine ce qui peut être très pratique. Le chemin d’export des traces se fait via l’option tracefile=. Si le chemin n’est pas précisié, les captures sont sauvegardées dans C:\Users\<compte admin>\AppData\Local\Temp\NetTraces\NetTrace.etl

Pour arrêter la capture, il suffit d’entrer la commande

netsh trace stop

La génération du fichier d’export peut prendre un certain temps.

Il est possible de lire le fichier ainsi généré grâce à Microsoft Message Analyzer. Dans les version précédentes de ce logiciel appelées Microsoft Network Monitor (toujours disponible en v3.4 ici) il fallait sélectionner un « parser » particulier (Windows) pour pouvoir interpréter correctement ces traces. Sous Microsoft Message Analyzer ça n’est plus nécessaire.

NETSH est plus complet qu’il en a l’air et de nombreux scénario sont possible. Il est possible de les afficher via la commande netsh trace show scenarios
Par exemple netsh trace start scenario=FileSharing capture=yes pour comprendre d’éventuels problèmes de partage de fichiers et d’imprimantes. La virgule (,) servira de séparateur pour plusieurs scénarios.

Analyseurs de trafic WEB

Fiddler

Fiddler est un outil qui va aider à déboguer les applications Web en capturant le trafic réseau entre un site et un client. L’outil permet d’inspecter les données entrantes et sortantes pour surveiller et éventuellement modifier les demandes et les réponses avant que le navigateur les reçoive. Il se positionne en tant que PROXY pour un navigateur et agit comme un Man-in-the-Middle. Il peut aussi désencapsuler et déchiffrer le trafic TLS/SSL moyennant l’injection d’un certificat « trusted root certificate » sur le poste client.

Burp suite

Ici utilisé dans la suite Kali. Burp Suite se positionne comme Fiddler en tant que PROXY entre le client et le site. Il est capable de manipuler le trafic qui passe au travers de celui-ci. Cette disposition est communément appelée attaque de l’homme du milieu (MITM). L’application utilise une interface permettant aisément la manipulation des données échangées dans les deux sens. Grâce à cette fonctionnalité, il est possible d’injecter des données non-conformes dans l’objectif de provoquer un comportement anormal de l’application et donc d’en identifier les bugs et vulnérabilités associées.

Il intègre aussi plusieurs outils et notamment:

  • un robot d’indexation qui permet d’initier des connexions avec l’application web, d’examiner les cookies et d’en parcourir les pages afin d’identifier sa structure interne.
  • un répéteur qui permet de renvoyer des requêtes HTTP selon un paramétrage défini afin d’observer le comportement de l’application web et en identifier les vulnérabilités.
  • un séquenceur qui permet l’analyse du degré d’aléatoire des jetons de session émit par l’application mais également des nonces cryptographiques et autres éléments aux valeurs normalement imprédictibles.

 

Chrome

Le navigateur Chrome via ses outils de développement intégrés (Ctrl+Maj+I) permet de générer une trace des sessions HTTP/HTTPS.

Pour lancer cette trace: Outils de développement (Ctrl+Maj+I) puis cliquez sur l’onglet « Network ». Selectionner « Preserve Log ». L’enregistrement doit démarrer automatiquement sinon, cliquez sur le cercle noir pour commencer à enregistrer l’activité dans votre navigateur. Lancer le scénario de connexion à enregistrer. Une fois terminé, cliquez avec le bouton droit de la souris sur n’importe quelle ligne présentant le résultat et cliquez sur « Save as HAR with content ».

Le fichier ainsi généré est au format HAR (JSON), librement consultable via Fiddler notamment (Fiddler \ File \Import session: HTTParchive).

 

Add a Comment

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