greygor1995
Goto Top

IP Header Analyse

Moin moin,
Ich komme mit einem Bereich noch so garnicht zurecht. Es geht um den TCP/Ip Header.
Ich weiß wie Byte beziehungsweise Bit ein Wert z.B. einnimmt. Aber ich bekomme es irgendwie nicht hin den Aufbau anzuwenden um einen Mittschnitt zu verstehen.

Hier ein Beispiel
ipheader
:

Die Lösung für die Aufgabe besitze ich nur weiß ich nicht wie man da genau drauf kommt. Ich zähle sämtliche Bytes ab, komme jedoch nie auf das gewünschte Ziel.

Ich danke für eure Hilfe ;)

Content-ID: 300381

Url: https://administrator.de/contentid/300381

Ausgedruckt am: 22.11.2024 um 11:11 Uhr

Tjelvar
Tjelvar 30.03.2016 um 12:03:21 Uhr
Goto Top
Hallo,

die obere Angabe ist in Hexadezimal, der Header muss jedoch Bitweise gezählt werden.

Pro Ziffer Hexa sind es 4 Ziffern Binär.

Version bspw. nutzt 4 Bits, das heißt die "4" aus dem Mitschnitt. HLEN ebenso 4 Bits, also die 5 aus dem Mitschnitt, das führst du dann solange weiter bis du jeden teil des mitschnittes in Header stehen hast.
Greygor1995
Greygor1995 30.03.2016 um 12:30:18 Uhr
Goto Top
OK ich versuche mal meinen Ansatz aufzuschreiben

die 4 ist die Version, die 5 Hlen, 00 Service Type,34 37 Total Length,16 40 Identification, 00 Flags, 7f Fragment Offset, 06 Time to Life, e3 Protokol, 8e c0 Header Checksum,

Nun fängt die Source ID bei C0 nach Lösung an, wo ist der Fehler, ist Time to Life dann nur die 0 ?, und was bedeutet dann das leere Kästchen wo nichts hinterlegt ist nach Time to Life
Lochkartenstanzer
Lösung Lochkartenstanzer 30.03.2016 aktualisiert um 12:43:42 Uhr
Goto Top
700acbf4e5b457b7ea49cc18cbcf410d

In einem Mitschnitt Quell- und Zieladresse zu finden ist ganz einfach:

Die Bytes 12-15 sind Quell- und die bytes 16-19 die Zieladresse, wie man einfach durch Abzählen der 32-Bit-Worte (4. und 5. Wort) feststellen kann.

lks

PS: Informatiker fangen bei 0 an zu zählen. face-smile
114757
114757 30.03.2016 aktualisiert um 12:45:36 Uhr
Goto Top
Und täglich grüßt das Murmeltier.
Quell und Ziel IP von einem Netzwerkmitschnitt ermitteln

Gruß jodel32
Greygor1995
Greygor1995 30.03.2016 um 12:50:12 Uhr
Goto Top
Ok leuchtet soweit ein, eine Frage hätte ich nun Flags entspricht ja nach dem Aufbau 8 bit, was ja dann eigentlich 2 Zahlen wären, oder interpretiere ich die ganze Zeit den Aufbau falsch ?
114757
114757 30.03.2016 aktualisiert um 12:57:03 Uhr
Goto Top
Der Flag ist nicht "4" sondern Hex 0x40 das ist was anderes als eine einzige alleinstehende 4.

HEX 0x40 ist Dezimal = 64
Greygor1995
Greygor1995 30.03.2016 um 13:06:49 Uhr
Goto Top
OK, hab nun alles soweit verstanden, mein Ansatz war ok, hab nur paar Werte unterschlagen. Man muss sich echt ordentlich konzentrieren um das aufzulösen :D
Lochkartenstanzer
Lochkartenstanzer 30.03.2016 um 13:46:01 Uhr
Goto Top
Zitat von @114757:

Der Flag ist nicht "4" sondern Hex 0x40 das ist was anderes als eine einzige alleinstehende 4.


Ich gebe zu, ich habe es etwas flapsig hingeschrieben, als ich die Nibbles auf die Felder verteilt habe. face-smile

lks
Joebacca
Joebacca 06.03.2019 um 12:44:14 Uhr
Goto Top
Da der Beitrag etwas älter ist hoff ich noch auf ne Antwort.

Das mit den Flags versteh ich leider nocht nicht ganz.
Die Version wird hier als 0x40 beschrieben und die HLEN als 5. Servie 00 usw. wie kommt man dadrauf.
Der Rest ist soweit verständlich.

Danke schonmal im vorraus
Lochkartenstanzer
Lochkartenstanzer 06.03.2019 um 13:20:26 Uhr
Goto Top
Zitat von @Joebacca:

Da der Beitrag etwas älter ist hoff ich noch auf ne Antwort.

Das mit den Flags versteh ich leider nocht nicht ganz.
Die Version wird hier als 0x40 beschrieben und die HLEN als 5. Servie 00 usw. wie kommt man dadrauf.


Ganz einfach. Im Mitschnitt oben steht 45 00 00 34 ...

Das sind sedezimale zahlen, di eman auch als 0x45 0x00 0x0034 hinschreiben kann (big endian).

Diese unter teile man in die einzelnen Bibbles (4-bitgruppen) und erhält damit 4 5 0 0 0 0 3 4 , ggf kann man das sogar als Bitfolge hinschreiben, so daß man dann die Bits einfach auf die Headerfelder verteilen kann.

Die ersten 4 Bits ergeben 4, also die version des IP-Headers. die nächsten 4 Bits ergeben 5, also die Länger des Headers in 32bit-Worten (=5 x 4Byte = 20 Bytes). Service ist das nächste by (8-bit) also 00. Dann kommen 16 Bit die sedezimal 0x0034 ergeben, als 52 (Bytes) als Länge des Gesamtpaketes. usw.

Siehe auch IPv4-Header bei Wikipedia.

lks
Joebacca
Joebacca 06.03.2019 um 13:52:30 Uhr
Goto Top
Also sind das jeweils einfach feste größen die man wissen muss.

Mich hat es nur etwas verwirrt wegen dem Flag weil Flag nur 3 Bit hat.

Danke
Lochkartenstanzer
Lochkartenstanzer 06.03.2019 um 13:56:00 Uhr
Goto Top
Zitat von @Joebacca:

Also sind das jeweils einfach feste größen die man wissen muss.

Fie Größe der Heaferfelder ist ha fedsgelegt.


Mich hat es nur etwas verwirrt wegen dem Flag weil Flag nur 3 Bit hat.

Ja, in der Definition des Header dteht, welche 3 bit fürs Flag zu nehmen sind. Man muß nur die Bits zählen.

lks