Creando filtros de captura personalizados para análisis con tcpdump
Tcpdump es una herramienta que nos permite capturar, analizar y mostrar en tiempo real el tráfico que circula por la red. Los paquetes transmitidos y recibidos pueden ser filtrados según un determinado protocolo y luego inyectarse en un red. Tcpdump funciona sobre Linux y utiliza la biblioteca libpcap para capturar los paquetes del protocolo que indiquemos por la red.
Veamos a continuación unos ejemplos en los que utilizamos tcpdump para capturar los paquetes de una IP determinada y guardar en un archivo.
tcpdump -n src host 192.168.0.11 > captura.bpf
El resultado será un archivo captura.bfp con todas las capturas que podemos analizar como un archivo de texto.
Este archivo podemos inyectarlo en otra red o en la misma red para hacer prueba de tráfico con los paquetes capturados:
sudo netsniff-ng -deth0 -f captura.bpfTambién podemos capturar algunos puertos, por ejemplo: ftp puerto 21. http puerto 80 y smtp con seguridad TLS
tcpdump -dd 'ip src 192.168.0.11 and tcp and port (21 or 80 or 465)' > captura.bpfLuego lo inyectamos en una red WiFi:
netsniff-ng --in wlan0 -f "ip and tcp and port (21 or 80 or 465)"También podemos capturar paquetes de toda la red:
tcpdump -n dst net 192.168.1.0/24 > captura.bpf