2015-08-28 34 views
5

Jeśli użyjesz "Follow TCP stream" w wireshark, uzyskasz bardzo dobry wyświetlacz dla dialogu serwera klienta.Wireshark: Zrzuć dialog klient-serwer

Jeden kolor to klient, innym kolorem jest serwer.

Czy istnieje sposób, aby zrzucić to do ascii bez utraty kto powiedział co?

Na przykład:

server> 220 "Welcome to FTP service for foo-server." 
client> USER baruser 
server> 331 Please specify the password. 
client> supersecret 

chcę uniknąć zrzutów ekranu. Dodanie "server>" i "client>" do wierszy jest podatne na błędy.

+0

Czy próbowałeś zapisać jako plik cap? – Sunny

+0

Można faktycznie wyeksportować listę pakietów do wszystkich rodzajów formatów. Możesz spróbować wyeksportować go jako plik CSV, aby osiągnąć swój cel –

+0

@ Nie widzę "csv" na liście eksportu okna dialogowego "Follow TCP Stream". Widzę ASCII, EBCDIC, Hex Dump, C Arrays, Raw. Żaden z tych formatów nie jest łatwy do odczytania dla ludzkiego oka. Nie widać szybko, kto (klient lub serwer) powiedział co. – guettli

Odpowiedz

2

To może nie być możliwe w wersji GUI, ale jest to osiągalne z console versiontshark:

tshark -r capture.pcap -qz follow,tcp,ascii,<stream_id> > stream.txt

Wymień <stream_id> o rzeczywistej strumienia ID (np 1):

tshark -r capture.pcap -qz follow,tcp,ascii,1 > stream.txt

Spowoduje to wyprowadzenie pliku ASCII. Jak to jest lepsze niż zapisywanie go bezpośrednio z wersji GUI? Dobrze:

  • Dane wysyłane przez drugi węzeł jest poprzedzona karcie do odróżnienia go od danych przesyłanych przez pierwszy węzeł.

  • Ponieważ produkcja w ASCII mogą zawierać nowe linie, długość każdej z sekcji produkcji oraz o nowej linii poprzedza każdy punkt wyjścia.

To sprawia, że ​​łatwo parsable plik. Przykład Wydajność:

=================================================================== 
Follow: tcp,ascii 
Filter: tcp.stream eq 1 
Node 0: xxx.xxx.xxx.xxx:51343 
Node 1: yyy.yyy.yyy.yyy:80 
786 
GET ... 
Host: ... 
Connection: keep-alive 
Pragma: no-cache 
Cache-Control: no-cache 
Accept: */* 
User-Agent: ... 
Referer: ... 
Accept-Encoding: ... 
Accept-Language: ... 
Cookie: ... 

    235 
HTTP/1.1 200 OK 
Cache-Control: no-cache, no-store 
Pragma: no-cache 
Content-Type: ... 
Expires: -1 
X-Request-Guid: ... 
Date: Mon, 31 Aug 2015 10:55:46 GMT 
Content-Length: 0   
=================================================================== 

786\n jest długością pierwszej części wyjściowego Node 0. \t235\n jest legnth sekcji odpowiedzi od Node 1 i tak dalej.

+0

Przykładowy skrypt oparty na powyższym, wymaga trochę poprawek: http://noahdavids.org/self_published/tshark-follow-stream.html – aergistal

+1

Używam tego: 'tshark -r tmp/ftp_2015-12-16.pcap -R ftp -tad', który wypisuje "Żądanie" i "Odpowiedź". W ten sposób mogę wyraźnie zobaczyć, co było * wypowiadane * przez klienta i co przez serwer. – guettli