2

キャプチャしたデータ パケットの IP ヘッダーの TTL 値を Scapy で偽造しています。IP とトランスポート層の両方のヘッダーのチェックサム以外に、再計算する必要があるものはありますか?

今、私はやっています:

for p in myPackets:
    p[IP].ttl = targetTTL
    del(p[IP].chksum)
    del(p[IP].payload.chksum) 

for i in range(len(myPackets)):
    myPackets[i] = myPackets[i].__class__(str(myPackets[i])) 

srパケットとその応答 (私の場合は ICMP) を照合するScapy の関数が 1 秒を超える数の RTT でデータを返してきたため、これを求めています。

4

2 に答える 2

0

パケットを送信しただけですか?Scapy はチェックサムを自動的に再計算する必要があります。None に設定することもできますが、それが必要だとは思いません。

于 2012-08-09T16:50:01.427 に答える
0

パケットで show2() コマンドを呼び出すと、scapy は自動的にチェックサムを再計算すると思います。したがって、オブジェクト pckt のインデックス 0 にパケットがある場合、 pckt.show2() を呼び出す必要があり、チェックサムは正しいはずです。少なくともそれは私の理解です。

pkt.show2() show と同じですが、組み立てられたパケットに対して (たとえば、チェックサムが計算されます)ソース

于 2012-08-30T14:17:26.430 に答える