User Webseiten Sniffing mit tshark auf einem headless Raspberry Pi oder „Dump and analyze network traffic with tshark“

Wie kann eine User Aktion mitgelesen werden, die ein User im Browser tätigt? Also wie können wir die URLs usw. mitlesen, die von und zu einem Browser gehen? Das alle von der Konsole aus z.B. mit einem Raspberry Pi? Das hatte ich schon mal vor 5 Jahren nicht ganz so ausführlich hier beschrieben. Noch mit tshark 1.12. jetzt mal mit 2.6.5. Hier ein kleiner Einblick in die Arbeit eines Pentesters.

Also zu erst der User Task, er ruf in einer Konsole die URL www.wenzlaff.info auf. Dafür benutzen wir den Browser lynx. Wenn der noch nicht auf dem Pi installiert ist, kann das schnell mit einem sudo apt-get install lynx durchgeführt werden. Dann der erste Test, Aufruf:

lynx www.wenzlaff.de

Es öffnet sich die Seite im Browser:

Ok, das ist unser Testfall, den wir jedesmal aufrufen. Dann schließen wir den Browser wieder mit q und y.

Nun schauen wir uns in einer neuen Konsole erst einmal alle Schnitstellen mit tshark an. Das kann mit sudo apt-get install tshark leicht installiert werden. Also erster Test. Welche Schnittstellen gibt es? Das geht mit tshark -D

Wir wollen mal direkt an der eth alles Schnittstelle mithorchen, also die 1. Wir wollen alles was von und zum Host 10.0.0.0 geht (anpassen, auf eigene Rapberry Pi Adresse). Das geht mit

tshark -i 1 host 10.0.0.0

Liefert: Capturing on ‚eth0‘ dann kann in dem anderen Konsolen Fenster die Webabfrage lynx www.wenzlaff.info gestartet werden, es kommt dann eine Menge, das kann dann mit CTRL-C gestopt werden.

oder auch als Hex und Asci Ausgabe mit einem zusätzlichen x

tshark -ix 1 host 10.0.0.0

Das ist aber beides zuviel des Guten. Also Filtern wir mal nur die http Anfragen.

Im Hex-Format, für Passwörter ganz gut, mit Filter nur http

tshark -i 1 -Y http host 10.0.0.0

Das ist ja schon das was wir wollten.
oder im hex und text Format:

tshark -xi 1 -Y http host 10.0.0.0

Mit etwas Farbe in die Ausgabe sieht es schon viel besser aus, wir browsen mal ein paar Seiten an:

tshark -i 1 –color -Y http host 10.0.0.0

Da kann man denn schon genau erkennen welche Seiten der User angesehen und auch welche Datei genau runtergeladen wurde.

Oder wir schneiden mal nur 10 Sekunden mit, und beenden das Programm dann:

tshark -i 1 -Y http –color -a duration:10 host 10.0.0.0

Es geht auch die ganze Seite zum Mitlesen mit -V

tshark -i 1 -Y http –color -a duration:60 -V host 10.0.0.0

Nun mal was für 30 Sekunden in eine Datei pipen

tshark -i 1 -Y http -a duration:30 host 10.0.7.43 > mitschnitt-1.txt

Ok, dann noch alle Optionen mit tshark -h:

Oder hier auf der wireshark Seite.