8 Stimmen

Wie berechnet man die IP-Prüfsumme mit scapy neu?

Mögliches Duplikat:
Wie berechnet man die Prüfsumme eines Pakets, ohne es zu senden?

Ich habe eine Quell-IP- und MAC-Adresse in einem aufgefangenen Paket gefälscht, aber jetzt muss ich die Prüfsumme neu berechnen, damit sie nach dem Empfang stimmt (nachdem sie in das Netzwerk eingespeist wurde, natürlich). Ich wollte die Prüfsumme nicht wirklich selbst implementieren, und ich dachte, dass scapy könnte dies für mich tun. Ich habe gelesen, dass die show2() sollte die Prüfsumme neu berechnen, aber ich kann sie nicht zum Laufen bringen.

Wie kann ich also scapy die Prüfsumme für ein abgefangenes + gefälschtes Paket neu zu berechnen (und zu ersetzen)?

Danke!

14voto

Cédric Julien Punkte 74976

Comme hier gezeigt zu löschen, müssen Sie die .chksum Attribut vor dem Aufruf der show2() Methode von scapy

4voto

Michael Foukarakis Punkte 37819

Nehmen wir an, dass wir einen IP-Header verarbeiten und die Prüfsumme nach dem nächsten Hop neu berechnen wollen:

>>> iph = IP(import_hexcap())
0000 4500 0064 000f 0000 fe01 3726 c0a8 0108
0010 c0a8 030b
>>> iph.ttl = iph.ttl - 1
>>> del iph.chksum
>>> iph.show2()
###[ IP ]###
version= 4L
ihl= 5L
tos= 0x0
len= 100
id= 15
flags= 
frag= 0L
ttl= 253
proto= icmp
chksum= 0x3826
src= 192.168.1.8
dst= 192.168.3.11
options= 

En .chksum Feld hat Ihre Antwort.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X