2017-04-06 3 views
0

Mein aktueller tcpdump Betrieb hat alle Anforderungen anmelden HTTP-Port auf bestimmte Schnittstelle:TCP-Dump-Filter-Anforderungen bestimmte Werte enthalten

tcpdump -i eth0 -C 100 -W 100 -w traffic port http 

Problem ist, an dieser Stelle tcpdump wird alle Anfragen zu sammeln (auch mit sinnvollen Informationen von meinem Loginseite). An diesem Punkt muss ich meine tcpdump-Datei durchlaufen und diese Datei egrep bearbeiten, um sie zu löschen. Gibt es eine Möglichkeit, die Suche nach bestimmten Textwerten in meine Anfrage zu integrieren, und wenn sie vorhanden sind - diese Anfrage nicht in der Datei zu protokollieren?

Antwort

1

Sie könnten tshark (das CLI erstellt von wireshark) anstelle von tcpdump verwenden, damit Sie lua Skripts ausführen können.

Es ist ein ziemlich fortgeschrittenes Thema, aber die Untersuchung wert Sie einen Blick auf nehmen:

https://wiki.wireshark.org/Lua/Examples

IMHO Sie dieses Problem nicht mit Regex lösen sollte, sind Sie besser von sensiblen Informationen zu verwischen (Print ** **) anstatt diese komplett zu entfernen.

Es ist auch möglich, dass vertrauliche Informationen an einen Endpunkt wie /login gesendet werden und weil Tshark das HTTP-Protokoll in Ihrem Lua-Skript analysiert, können Sie Entscheidungen basierend auf dem Pfadfeld schreiben.

+0

Oder gibt es eine Möglichkeit, Daten nur aus tcpdump nicht zur Datei, sondern zur nächsten Pipeline mit grep dahinter zu übergeben? –

+0

Es hängt davon ab, welche Ausgabe Sie wollen, wenn Sie am Ende mit einer Textdatei enden, die für Ihren Anwendungsfall in Ordnung sein kann, aber idealerweise haben Sie eine PCAP-Datei, die Sie weiter analysieren können. Aber ja, Sie können die Payload auf STDOUT ausgeben und grep verwenden. 'tcpdump -As 1024' sendet die ersten 1024 Bytes an STDOUT – Tiago

+0

pipettiert tcpdump nicht, und speichert es dann in einer Datei (nach grepping) würde die Daten im selben Format wie tcpdump in der Datei selbst speichern? –

Verwandte Themen