•
ngrep: network grep
Mediante ngrep podemos buscar expresiones regulares en el tráfico de una interfaz. Vamos a ver su funcionamiento:
Podemos utilizar ngrep de la misma forma que utilizamos tcpdump, indicando que tráfico queremos capturar:
# ngrep port 80 interface: eth0 (192.168.254.0/255.255.255.0) filter: (ip or ip6) and ( port 80 ) #### T 192.168.254.17:41365 -> 87.98.227.154:80 [AP] HEAD / HTTP/1.1..User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5..Host: systemadmin.es..Accept: */*.... ## T 87.98.227.154:80 -> 192.168.254.17:41365 [AP] HTTP/1.1 200 OK..Server: nginx..Date: Sun, 13 Nov 2011 20:48:22 GMT..Content-Type: text/html; charset=UTF-8..Connection: keep-alive..X-Pingback: http://systemadmin .es/xmlrpc.php.... ####exit 10 received, 0 dropped
En el caso que queramos especificar una interfaz deberemos utilizar la opción -d:
# ngrep -d eth0 port 80
Para buscar una expresión a buscar en el tráfico deberemos indicarla antes que la expresión que usamos para la captura de éste:
# ngrep -d eth0 "Host:" port 80 interface: eth0 (192.168.254.0/255.255.255.0) filter: (ip or ip6) and ( port 80 ) match: Host: #### T 192.168.254.17:44933 -> 87.98.227.154:80 [AP] HEAD / HTTP/1.1..User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5..Host: systemadmin.es..Accept: */*.... ########## T 192.168.254.17:44934 -> 87.98.227.154:80 [AP] HEAD / HTTP/1.1..User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5..Host: systemadmin.es..Accept: */*.... ###### 23 received, 0 dropped
Para tráfico HTTP puede resultar muy cómodo mostrar la salida por linea con la opción -W indicando byline:
# ngrep -d eth0 -W byline "Host:" port 80 interface: eth0 (192.168.254.0/255.255.255.0) filter: (ip or ip6) and ( port 80 ) match: Host: #### T 192.168.254.17:44935 -> 87.98.227.154:80 [AP] HEAD / HTTP/1.1. User-Agent: curl/7.15.5 (i686-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5. Host: systemadmin.es. Accept: */*. . ##########
Los # que vemos que van apareciendo entre las muestras son los paquetes que cumplen la expresión de captura pero no cumplen la expresión regular.
Relacionados
Imprimir
Deja un comentario: