Outils pour utilisateurs

Outils du site


systeme:tcpdump

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
systeme:tcpdump [2010/03/19 23:07] rootsysteme:tcpdump [2015/08/16 08:55] (Version actuelle) root
Ligne 10: Ligne 10:
  
 Capturer toutes les connexions, qui ont pour source une adresse IP commençant par 192.168. : Capturer toutes les connexions, qui ont pour source une adresse IP commençant par 192.168. :
-  tcpdump -i eth0 src net 192.168+  tcpdump -i eth0 src net 192.168
  
 Capturer toutes les connexions, qui ont pour destination une adresse IP bien précise : Capturer toutes les connexions, qui ont pour destination une adresse IP bien précise :
-  tcpdump -i eth0 dst net 192.168.0.175+  tcpdump -i eth0 dst net 192.168.0.175
  
 Isoler toutes les connexions qui utilisent le port 80 (http) : Isoler toutes les connexions qui utilisent le port 80 (http) :
-  tcpdump -i eth0 port 80+  tcpdump -i eth0 port 80
  
 On pourra également isoler la source ou la destination. Ici on ne souhaite capturer que les envois de mails (port 25 en destination) : On pourra également isoler la source ou la destination. Ici on ne souhaite capturer que les envois de mails (port 25 en destination) :
-  tcpdump -i eth0 dst port 25+  tcpdump -i eth0 dst port 25
  
  
Ligne 32: Ligne 32:
 Si je souhaite capturer toutes les connexions réseaux qui vont de l'adresse IP 192.168.0.175 vers l'adresse 192.168.0.1, utilisant le protocole TCP et le port 80, je pourrais utiliser une expression comme celle-ci : Si je souhaite capturer toutes les connexions réseaux qui vont de l'adresse IP 192.168.0.175 vers l'adresse 192.168.0.1, utilisant le protocole TCP et le port 80, je pourrais utiliser une expression comme celle-ci :
  
-  tcpdump -i eth0 src 192.168.0.175 and dst 192.168.0.1 and port 80 and tcp+  tcpdump -i eth0 src 192.168.0.175 and dst 192.168.0.1 and port 80 and tcp
  
 Vous l'avez peut-être remarqué, mais toutes ces commandes n'affichent que le dialogue effectué par la carte réseau. Pour afficher le contenu même des paquets qui transitent au format hexadécimal et ascii, on pourra utiliser les options -XX (ascii + hexa) et -s0 (= pour full content). Vous l'avez peut-être remarqué, mais toutes ces commandes n'affichent que le dialogue effectué par la carte réseau. Pour afficher le contenu même des paquets qui transitent au format hexadécimal et ascii, on pourra utiliser les options -XX (ascii + hexa) et -s0 (= pour full content).
Ligne 46: Ligne 46:
   * capturer un mot de passe FTP :   * capturer un mot de passe FTP :
  
-  tcpdump -XX -s0 -i eth0 tcp and port 21 | grep -A1 PASS+  tcpdump -XX -s0 -i eth0 tcp and port 21 | grep -A1 PASS
  
   * Récupérer un cookie de session, d'un utilisateur authentifié sur un site web :   * Récupérer un cookie de session, d'un utilisateur authentifié sur un site web :
  
-  tcpdump -XX -s0 -i eth0 port 80 | grep -i -A5 Cookie+  tcpdump -XX -s0 -i eth0 port 80 | grep -i -A5 Cookie
  
   * Capturer des emails envoyés sur le réseau (ici on prend une longueur de 20 lignes, à adapter selon la taille du message):   * Capturer des emails envoyés sur le réseau (ici on prend une longueur de 20 lignes, à adapter selon la taille du message):
  
-  tcpdump -XX -s0 -i eth0 port 25 | grep -i -A20 From+  tcpdump -XX -s0 -i eth0 port 25 | grep -i -A20 From
  
   * capturer des conversations msn (longueur de 10 lignes à adapter aussi selon la taille du message) :   * capturer des conversations msn (longueur de 10 lignes à adapter aussi selon la taille du message) :
  
-  tcpdump -XX -s0 -i eth0 port 1863 | grep -A10 "text/plain"+  tcpdump -XX -s0 -i eth0 port 1863 | grep -A10 "text/plain"
  
 On comprend ici très rapidement l'utilité d'utiliser des connexions sécurisées (https, ftps, ssh, smtps ...) lorsque l'on est sur Internet, afin de rendre les informations sensibles, illisibles via ce procédé. On comprend ici très rapidement l'utilité d'utiliser des connexions sécurisées (https, ftps, ssh, smtps ...) lorsque l'on est sur Internet, afin de rendre les informations sensibles, illisibles via ce procédé.
Ligne 84: Ligne 84:
 exemple: exemple:
   $ sudo tcpdump 'tcp[13] & 2 != 0'   $ sudo tcpdump 'tcp[13] & 2 != 0'
 +
 +
 +====== Exploitation des paquets avec Wireshark ======
 +
 +Il est possible d’enregistrer les paquets capturés dans un fichier et ainsi de les analyser plus tard, sur une autre machine éventuellement, avec Wireshark et de bénéficier des avantages d’une représentation graphique des paquets. On utilisera cette méthode, par exemple, lorsque l’on doit analyser les paquets arrivant sur un serveur ne disposant pas d’interface graphique permettant de faire tourner Wireshark.
 +
 +L’enregistrement des paquets se fait en utilisant l’option -w qui dit à tcpdump d’enregister les paquets bruts dans un fichier. Par exemple:
 +
 +  $ sudo tcpdump -Xvvnns0 port 80 -w dump.cap
 +
 +Ensuite il ne reste plus qu’à analyser le fichier dump.cap dans Wireshark en le lançant avec le nom de fichier en argument:
 +
 +  $ wireshark -r dump.cap
 +
 +====== Décoder les paquets CDP ou LLDP packets ======
 +Cela permet entre autre de voir sur quel numéro de port de quel switch est branché notre serveur :
 +
 +  $ tcpdump -i eth0 -v -s 1500 -c 1 '(ether[12:2]=0x88cc or ether [20:2]=0x2000)'
  
systeme/tcpdump.1269040053.txt.gz · Dernière modification : 2010/03/19 23:07 de root