Re: Sniffer un échange réseau local avec nc

Top Page

Reply to this message
Author: Olivier Allard-Jacquin
Date:  
To: Guilde
Subject: Re: Sniffer un échange réseau local avec nc
    Bonsoir Frédéric,

Le 15/04/2014 14:10, Frédéric a écrit :
> Hello,
>
> J'essaye de sniffer ce qui transite entre un client et un serveur. Pour
> ça, je pensais utiliser nc, mais je n'arrive pas à grand chose.
>
> Le serveur écoute sur le port 1028 ; j'ai configuré le client pour
> dialoguer sur le port 1029 au lieu de 1028, et j'ai lancé :
>
> $ mkfifo backpipe
> $ nc -v -l 1029 0<backpipe | nc -v localhost 1028 1>backpipe
>
> mais j'obtiens ceci (au bout de quelques secondes après avoir lancé nc) :
>
> localhost [127.0.0.1] 1028 (?) open
> 1029: inverse host lookup failed: Unknown host
> listening on [any] 48278 ...
>
> Une idée ?


    Pour cela, j'utilise tcpdump (en temps que root), et je sauve le
contenu des données dans un fichier temporaire. Fichier, que j'ouvre
sans problème avec "whireshark", et qui permet d'analyser graphiquement
et finement les paquets.


tcpdump -s 65535 -w /tmp/tcpdump.bin -i lo -n -p

=> Ecoute l'interface localhost (lo)
=> Sauve tous les paquets dans /tmp/tcpdump.bin
=> Ctrl+C pour arrêter la capture

    L'avantage de la solution, c'est que tu faire un pré-filtrage avec
tcpdump :


tcpdump -s 65535 -w /tmp/tcpdump.bin -i lo -n -p tcp port 1028

=> Ne sauve que le trafic sur le port TCP 1028 de l'interface lo.

    Pour l'analyse, lance "wireshark /tmp/tcpdump.bin" (en temps
qu'utiliateur simple), cela ouvre le fichier /tmp/tcpdump.bin .


    Bouton droit sur le 1er paquet / "Follow TCP stream" permet de voir la
requête et la réponse d'une connexion. C'est très pratique pour voir une
requête de page HTML, et son contenu.


    Tu finis par un "Filtre out this stream", ce qui permet de la faire
disparaître de l'écran de la capture, et tu peux ainsi passer à
l'analyse de la stream suivante.


    Sur une connexion en HTTP, tu verras ceci :
- une stream avec la requête d'une page HTML, suivit du contenu de la
page en elle-même (du texte, voir plus rarement du texte compressé)
- puis tu verras plusieurs stream, généralement une par image ou fichier
javascript/css/autre téléchargé.


    Par contre, si tu veux capturer ainsi du flux vidéo (comme du youtube
par exemple), c'est très complexe parce que la vidéo est téléchargé par
petits morceaux, et en parallèle.


    Cordialement,


                            Olivier
-- 
~~~~~~~  _____/\_____  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phoenix /   _ \/ _   \    Olivier Allard-Jacquin
       /   / \  / \   \   Web:  http://olivieraj.free.fr/
      /___/  /  \  \___\  Mail: olivieraj@???
~~~~ /////  ///\\\  \\\\\ ~~~~~~~~~~~~~~~~~~~~~~~ Linux Powered !!