2. tcpdump BÁSICO
INTRODUCCIÓN:
Tcpdump es una herramienta para línea de comandos cuya utilidad principal es analizar el tráfico
que circula por la red.
Permite al usuario capturar y mostrar en tiempo real los paquetes transmitidos y recibidos por la red
a la cual el ordenador está conectado.
Tcpdump funciona en la mayoría de los sistemas operativos UNIX: Linux, Solaris, BSD, Mac OS X,
HP-UX y AIX entre otros. En esos sistemas, tcpdump hace uso de la biblioteca libpcap para capturar
los paquetes que circulan por la red.
Existe una adaptación de tcpdump para los sistemas Microsoft Windows llamada WinDump y que
hace uso de la biblioteca Winpcap.
3. tcpdump BÁSICO
USOS DE tcpdump:
• Para depurar aplicaciones que utilizan la red para comunicar.
• Para depurar la red misma.
• Para capturar y leer datos enviados por otros usuarios u ordenadores
5. tcpdump BÁSICO
EJEMPLOS DE tcpdump (1):
# tcpdump -i eth0
Este comando captura el tráfico con la tarjeta eth0
# tcpdump -i eth0 -n
Este comando captura el tráfico con la tarjeta eth0 y no resuelve los nombres de los equipos
mostrándonos las direcciones IP
6. tcpdump BÁSICO
EJEMPLOS DE tcpdump (2):
# tcpdump -i eth0 -n -c 1 -t -A
En este ejemplo añadimos tres nuevas opciones:
● -c 1 : capturar solo un paquete
● -t no mostrar la hora,
● -A muestra los paquetes en ASCII
7. tcpdump BÁSICO
EJEMPLOS DE tcpdump (3):
Otra opción interesante es: -s len, donde "len" es la longitud de la trama.
Por defecto tcpdump sólo captura los primeros 68 bytes, lo cual es útil si lo único que se quiere son
las cabeceras IP, TCP o UDP.
Si se desean capturar más datos de la trama procederemos a modificar el valor de “len”. Por ejemplo
si queremos obtener tramas completas podemos ajustar la longitud de la captura a la MTU del medio
en el que estamos.
Por ejemplo para capturar toda la trama Ethernet podemos usar -s 1500 o -s 0
8. tcpdump BÁSICO
EJEMPLOS DE tcpdump. Filtros (1):
# tcpdump -i eth0 host <IP>
Este comando captura solo el tráfico proveniente o con destino en la dirección IP indicada.
Podemos definir si queremos capturar las tramas cuyo origen sea esa IP con la opción scr o las
tramas cuyo destino sea esa IP con la opción dst.
Por ejemplo:
# tcpdump -i eth0 dst host 192.168.1.100
Nos capturará las tramas cuya IP destino sea 192.168.1.100
# tcpdump -i eth0 src host 192.168.1.200
Nos capturará las tramas cuya IP origen sea 192.168.1.200
9. tcpdump BÁSICO
EJEMPLOS DE tcpdump. Filtros (2):
También podemos combinar distintas opciones con los comandos and y or. Por ejemplo:
# tcpdump -i eth0 dst host 192.168.1.100 or src host 192.168.1.101
Nos capturará las tramas cuya IP destino sea 192.168.1.100 o la IP origen 192.168.1.101
Así mismo podemos hacer que no aparezcan determinadas tramas con la negación not.
# tcpdump -i eth0 not dst host 192.168.1.100
Nos capturará todas las tramas excepto aquellas cuya IP destino sea 192.168.1.100
10. tcpdump BÁSICO
EJEMPLOS DE tcpdump. Filtros (3):
Podemos también capturar las tramas de una determinada red con la opción net. Por ejemplo:
# tcpdump -i eth0 net 192.168.1
Nos capturará todas las tramas de la red 192.168.1.0
11. tcpdump BÁSICO
EJEMPLOS DE tcpdump. Filtros (4):
Podemos también capturar las tramas de una determinada red con la opción net. Por ejemplo:
# tcpdump -i eth0 net 192.168.1
Nos capturará todas las tramas de la red 192.168.1.0
12. tcpdump BÁSICO
EJEMPLOS DE tcpdump. Filtros (5):
Igualmente podemos capturar las tramas según el puerto origen o el puerto destino con la opción
port. Por ejemplo:
# tcpdump -i eth0 port 80
Nos capturará todas las tramas que utilicen el protocolo http pues este utiliza el puerto 80 para
establecer las conexiones.
El siguiente comando nos captura todas las tramas excepto las que utilicen el puerto 22 (ssh)
# tcpdump -i eth0 not dst port 22
13. tcpdump BÁSICO
EJEMPLOS DE tcpdump. Filtros (6):
Finalmente debemos saber que es posible filtrar las tramas capturadas en función del protocolo
utilizado: tcp, udp, icmp, rarp, ip, ip6, igrp, icmp6, igmp, etc.
Por ejemplo, si queremos ver solo las tramas icmp producidas por el comando ping y otros...
# tcpdump -i eth0 icmp
14. tcpdump BÁSICO
ERREFERENTZIAK:
• Proiektuaren webgunea: http://www.tcpdump.org
• Windump: http://www.winpcap.org/windump
• Wikipedia:
• Tcpdump: https://es.wikipedia.org/wiki/Tcpdump
• Otras referencias:
• http://www.hackplayers.com/2013/12/que-deberiamos-saber-sobre-tcpdump-1.html
• http://www.hackplayers.com/2013/12/que-deberiamos-saber-sobre-tcpdump-2.html
• http://www.hackplayers.com/2014/01/que-deberiamos-saber-sobre-tcpdump-3.html
Lan hau Creative Commons Aitortu-Partekatu Berdin 3.0 Unported Lizentziaren menpe dago.