1

Scapy がネットワーク トラフィックをリッスンし、特定のパラメータを含むパケットを受信したら巧妙に細工されたパケットを送信するように設定することはできますか? たとえば、Scapy は eth0 でネットワーク トラフィックをリッスンし、ソース IP 10.10.44.3 からの ICMP "エコー リクエスト" パケットを受信した場合、Scapy は TCP SYN パケットをポート 34 から IP アドレス 192.168.2.1 に 8.8.8.8 を使用して送信します。ソース。そのようなセットアップはScapyで可能ですか?

4

1 に答える 1

0

はい。

関数を使用しsniff()て、オプションにパラメーターを指定できstop_filterます。

>>> print sniff.__doc__
Sniff packets
sniff([count=0,] [prn=None,] [store=1,] [offline=None,] [lfilter=None,] + 
      L2ListenSocket args) -> list of packets

...clipped...

stop_filter: python function applied to each packet to determine
             if we have to stop the capture after this packet
             ex: stop_filter = lambda x: x.haslayer(TCP)

関数が 1 を返す場合、sniff は停止し、任意のロジックを続行できます。

于 2013-10-24T16:31:42.233 に答える