Bueno, para todos esos fanáticos de tcpdump =)
¡CORRE TODOS ESTOS MANDOS COMO RAÍZ!
Obtener root en una terminal con
sudo -i
Para capturar los paquetes RAW ...
sudo tcpdump -i any -w /tmp/http.log &
Esto captura todos los paquetes crudos, en todos los puertos, en todas las interfaces y escribir en un archivo, /tmp/http.log.
Ejecute su aplicación Obviamente, ayuda si no ejecuta ninguna otra aplicación que use HTTP (navegadores web).
Matar tcpdump
killall tcpdump
Para leer el registro, use la -Abandera y canalice la salida a less:
tcpdump -A -r /tmp/http.log | less
La -Abandera imprime la "carga útil" o el texto ASCII en los paquetes. Esto enviará la salida a less, puede subir y bajar la página. Para salir less, escriba Q.
Cuando voy a Google, veo (en los paquetes sin formato):
20:42:38.179759 IP ufbt.local.56852 > sea09s02-in-f3.1e100.net.www: Flags [P.], seq 1:587, ack 1, win 913, options [nop,nop,TS val 25523484 ecr 492333202], length 586
E..~.v@.@..q......!#...P.(.gS.c..............u..Xh.GET /generate_204 HTTP/1.1
Host: clients1.google.com
Connection: keep-alive
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) rekonq Safari/534.34
Referer: http://www.google.com/
Accept: */*
Accept-Encoding: gzip, deflate, x-gzip, x-deflate
Accept-Charset: utf-8,*;q=0.5
Accept-Language: en-US, en-US; q=0.8, en; q=0.6
Cookie: PREF=ID=dd958d4544461998:FF=0:TM=1323842648:LM=1360205486:S=Fg_QCDsLMr4ZepIo; NID=67=OQJWjIDHG-B8r4EuM19F3g-nkaMcbvYwoY_CsOjzvYTOAxwqAos5kfzsk6Q14E70gIfJjHat8d8PuQIloB12BE-JuSHgsKHR2QSpgN12qSWoxeqhdcSQgzw5CHKtbR_a
tcpdumptiene un largo conjunto de opciones para refinar la recopilación de datos desde la especificación de interfaces de red a puertos a direcciones IP de origen y destino. NO puede descifrar (por lo que no funcionará con HTTPS).
Una vez que sepa lo que le interesa, puede usar varias opciones tcpdumppara registrar solo los datos de interés. La estrategia general es primero registrar todos los paquetes, revisar los datos sin procesar y luego capturar solo los paquetes de interés.
Algunas banderas útiles (opciones):
-i Specify an interface
-i eth0
tcp port xx
tcp port 80
dst 1.2.3.4
specify a destination ip address
Hay una curva de aprendizaje, tanto para usar tcpdumpcomo para aprender a analizar los datos que recopila. Para leer más, sugiero encarecidamente el tcpdumpManual de Daniel Miessler con ejemplos .