Bene, per tutti quei fan di tcpdump =)
ESEGUI TUTTI QUESTI COMANDI COME ROOT !!!
Ottenere radice in un terminale con
sudo -i
Per acquisire i pacchetti RAW ...
sudo tcpdump -i any -w /tmp/http.log &
Ciò catturare tutti i pacchetti grezzi, su tutte le porte, su tutte le interfacce e scrivere in un file, /tmp/http.log
.
Esegui la tua applicazione. È ovviamente utile se non si eseguono altre applicazioni che utilizzano HTTP (browser Web).
Uccidere tcpdump
killall tcpdump
Per leggere il registro, utilizzare il -A
flag e reindirizzare l'output per less
:
tcpdump -A -r /tmp/http.log | less
Il -A
flag stampa il "payload" o il testo ASCII nei pacchetti. Questo invierà l'output a less
, è possibile scorrere su e giù. Per uscire less
, digitare Q.
Quando vado su Google, vedo (nei pacchetti non elaborati):
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
tcpdump
ha una lunga serie di opzioni per perfezionare la raccolta dei dati dalla specifica delle interfacce di rete alle porte agli indirizzi IP di origine e destinazione. NON può decrittografare (quindi non funzionerà con HTTPS).
Una volta che sai cosa ti interessa, puoi usare una serie di opzioni con tcpdump
per registrare solo i dati di interesse. La strategia generale consiste nel registrare prima tutti i pacchetti, rivedere i dati non elaborati e quindi acquisire solo i pacchetti di interesse.
Alcuni flag utili (opzioni):
-i Specify an interface
-i eth0
tcp port xx
tcp port 80
dst 1.2.3.4
specify a destination ip address
Esiste una curva di apprendimento, sia per l'utilizzo tcpdump
che per l'apprendimento di come analizzare i dati raccolti. Per ulteriori letture, consiglio vivamente tcpdump
Primer con esempi di Daniel Miessler .