Tcpdump Filter

Mitglied: schnuppi

schnuppi (Level 1) - Jetzt verbinden

16.10.2011 um 00:30 Uhr, 3505 Aufrufe, 7 Kommentare

Hallo zusammen ich habe eine Frage in bezug auf Tcpdump bei der ich ein Verständnisproblem habe.

Hallo Leute,

ich bräuchte mal dringend eure Hilfe.

Ich soll nen DNS Filter schreiben im Tcpdump.

Ich hab auch die Lösung dazu nur versteh ich die nicht ganze wie sich das ganze zusammensetzt.

Frage ist: Write a tcpdump filter to select DNS packets whose opcode value > is 5

Die lösung ist

tcpdump dns [4] & 0x78 > 0x28


Ok bis [4] versteh ich das ganze das ist einfach das 5 Byte vom DNS Header (opcode) richtig?.....Aber danach beisst es bei mir aus....ok 0x28 = 5 ...nur wie setzt sich das ganze zusammen lässt sich das iwie ablesen aus dem DNS Header?? Und was hat es mit der 0x78 auf sich. Kann man das ganze iwie berechnen oder ablesen?

Ich hoffe ihr könnte mir helfen..und versteht meine Frage

Danke
Mitglied: dog
16.10.2011 um 02:05 Uhr
tcpdump dns [4] & 0x78 > 0x28

Zuerstmal ist das keine gültige Syntax für tcpdump unter Linux.
(Das müsste schon mit tcpdump port 53 anfangen)

einfach das 5 Byte vom DNS Header (opcode) richtig?

Der Opcode ist aber nicht im 5. sondern im 3. Byte

[4] & 0x78 > 0x28

& ist hier eine binäre Operation.
Wie du siehst wird damit in dem Byte wo der Opcode ist alle anderen Bits ausgeblendet, bis auf den Opcode.

Eine 5 sieht binär aber so aus:
Wie du siehst könnte die Prüfung nie funktionieren, weil jede Zahl des Opcodes niemals richtig unter dem Opcode ausgerichtet wäre.
Also muss ich jetzt die Zahl um 3 Stellen nach links verschieben:
Und wenn ich das wieder als Hex-Zahl darstelle komme ich auf...genau 0x28

Und damit kann ich jetzt den Opcode vergleichen:
Da aber alle Opcodes über 5 reserviert sind wird man solchen Traffic eher selten sehen.
Bitte warten ..
Mitglied: schnuppi
16.10.2011 um 13:13 Uhr
Herzlichen Dank für die super Antwort.

Hat mir sehr geholfen. Jedoch hätte ich noch 2 kurze Fragen.

1. Wie du siehst könnte die Prüfung nie funktionieren, weil jede Zahl des Opcodes niemals richtig unter dem Opcode ausgerichtet wäre.
Also muss ich jetzt die Zahl um 3 Stellen nach links verschieben:

->>>Ich muss das um drei stellen verschieben da ich mich noch in dem falschen Bereich vom Dns Header befinde richtig?

In diesem Fall Authoritative Answer,Truncated, Recursion Desired......., deshalb 3 nach rechts, so das ich mich in den Opcode bereich befinde....richtig?


2. Frage

Gibt es ein eindeutiges Indiz beim Output dafür um welches Paket es sich handelt. Kann ich das anhand nur des Outputs sehen??? Ok ich weiß das es sich hier um diesen Fall um ein IP paket handelt. Woran seh ich ob es sich um z.b. ICMP oder TCP handelt. Kann man das sofort identifizieren?

Bsp. Output

0x0000: 4500 032a b43b 4000 3806 4b6e c30c 1422
0x0010: 576a 118c 585c 1f90 80d9 1681 e3f5 ce0b
0x0020: 5018 1c84 9979 0000 504f 5354 202f 6675
0x0030: 6e61 6d62 6f6c 2f73 6572 7669 6365 732f
0x0040: 6164 6d69 6e20 4854 5450 2f31 2e30 0d0a
0x0050: 436f 6e74 656e 742d 5479 7065 3a20 7465


Danke nochmal
Bitte warten ..
Mitglied: dog
16.10.2011 um 14:45 Uhr
In diesem Fall Authoritative Answer,Truncated, Recursion Desired......., deshalb 3 nach rechts, so das ich mich in den Opcode bereich befinde....richtig?

Ja, diese Felder befinden sich im selben Byte wie der Opcode, aber verschoben wird die 5 nach links, nicht nach rechts.

Kann man das sofort identifizieren?

Jedes Ethernet-Paket hat ein Ethertype-Feld in dem das höhere Protokoll eindeutig definiert wird:
http://www.iana.org/assignments/ethernet-numbers

Jedes IP-Paket hat ein Protocol-Feld, in dem das höhere Protokoll eindeutig vergeben wird:
http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml

Was aber in einem TCP/UDP-Paket für ein Protokoll steckt ist nicht mehr eindeutig, da sich längst nicht jeder an die Port-Nummern-Zuweisung hält.
Bitte warten ..
Mitglied: schnuppi
17.10.2011 um 17:47 Uhr
So letzte Frage....dann würd ich den Thread schließen.

Wenn ich was dumpen will in dem Fall.....alle ip packets bei dem DF und MF "turned on" sind. Wie würde das aussehn?


wäre das so einigermaßen richtig?


tcpdump ip [6] & 0x40 == 0x40 ??


Danke nochmal
Bitte warten ..
Mitglied: dog
17.10.2011 um 20:11 Uhr
0x40 siehst so aus:
Damit wirst du also nie 2 Flags abdecken können ;-) face-wink
Bitte warten ..
Mitglied: schnuppi
17.10.2011 um 20:24 Uhr
Hmm ok das macht sinn....allerdings steh ich grad voll auf der Leitung!!! Kannst du mir vielleicht nochmal kurz das ganze erklären?


tcpdump ip [6] & 0x42 == 0x42
Bitte warten ..
Mitglied: dog
18.10.2011 um 01:28 Uhr
Was soll ich erklären?

Du möchtest das DF und MF = 1 sind, also muss das Byte so aussehen:
Weil sich gegen x nicht prüfen lässt nullen wir die:
Von der Binärrechnung wissen wir das jede Stelle den Wert 2^x hat (x ist die Stelle, die Stelle ganz rechts hat den Wert 0)
Also ergibt das umgerechnet 2^6+2^5=96
Wenn man noch den Drang hat das in Hex darzustellen: 0x60

Und der Filter lautet damit:
Bitte warten ..
Heiß diskutierte Inhalte
Windows 10
Windows 7 pro Lizenz nutzen für Windows 10
lukas0209Vor 1 TagFrageWindows 1016 Kommentare

Hallo Community, ich versuche seit einigen Wochen unser Netzwerk von Windows Server 2008 R2 Standard auf Windows Server 2016 Essentials um, welches eine städtische ...

Microsoft
Staatsanwaltschaften verschicken Vorladungen in Sachen Windows 10 Lizenzkeys
kgbornVor 1 TagInformationMicrosoft5 Kommentare

Nur zu Info für die Käufer der eBay-Schnäppchen - neuer Fall Staatsanwaltschaften verschicken Vorladungen in Sachen Windows 10 Lizenzkeys

Windows Netzwerk
Telefone im Netzwerk bekannt machen
jannik0205Vor 1 TagFrageWindows Netzwerk13 Kommentare

Hallo Zusammen, In unserem Unternehmen gibt es eine Telefonanlage mit eigenem Telefonienetz (192.168.5.X). Schließe ich ein Telefon an eine Netzwerkdose, bekommt es vom DHCP- ...

Microsoft
Microsoft Teams - "bitte wenden Sie sich an (. . .) um Teams für "domäne" zu aktivieren" nur bei einem Benutzer
eastfrisianVor 1 TagFrageMicrosoft6 Kommentare

Hallo zusammen! Wir haben bei uns Teams als Hybridversion eingeführt (Exchange on premise, AD-Sync in die Cloud) und nutzen Teams über das basic-Abonnement. Während ...

Netzwerke
Keine Versand von Mails von der Firmen zur Privaten E-Mailadresse möglich
blaub33r3Vor 1 TagFrageNetzwerke6 Kommentare

Hallo zusammen, wieso kommt der User keine Mails mehr? Der Sender wird als Spamer betrachtet? 1. Mailing an andere Privaten Adressen / Firmen Adressen ...

Netzwerke
Netzwerklaufwerk - Nur Lesen (Streamen)
CryexXVor 1 TagFrageNetzwerke8 Kommentare

Hallo, ich hab mal ne Frage und hoffe auf Lösung. Mir schießt aktuell keine in den Kopf :( Ich möchte ein Netzlaufwerk freigeben. Auf ...

Router & Routing
Vodafone Kabel: Eigenen Router an den Kabelanschluss oder einen WLAN-Router ohne Modem hinter die Vodafone Station?
DyingWordsVor 1 TagFrageRouter & Routing6 Kommentare

Hallo zusammen, da wir demnächst in eine Wohnung mit Kabelanschluss von Vodafone einziehen werden, frage ich mich, ob es sinnvoller ist einen eigenen Router ...

Netzwerke
Multi WAN Router
JoergDittVor 1 TagFrageNetzwerke9 Kommentare

Hallo zusammen, folgende Situation wir versorgen ca 150 Refugess in einer Gemeinschaftsunterkunft mit freiem WLAN Aktuell haben wir einen Fritzrouter mit Richtantenne an einer ...