我编写了一个脚本,允许使用选定的目标端口在IP地址上发送带有Scapy的数据包。
我想收到已发送数据包的响应。
例如,如果发送了数据包,我想收到响应......
我发送一个简单的20字节数据包:例如在我编码的<161>端口上发送数据包
data ="\x14"
packet = IP(dst=adresseip)/UDP(sport=161,dport=161)/Raw(load=data)
send(packet)
但是如何接收已发送数据包的响应?
答案 0 :(得分:2)
sr()
功能会为你做到这一点。它发送一个数据包并等待响应。或者,在send()
数据包之后,您可以sniff()
获取回复。 sr()
的简单示例:
>>> pingr = IP(dst="192.168.1.1")/ICMP()
>>> sr(pingr)
Begin emission:
.Finished to send 1 packets.
*
Received 2 packets, got 1 answers, remaining 0 packets
(<Results: TCP:0 UDP:0 ICMP:1 Other:0>, <Unanswered: TCP:0 UDP:0 ICMP:0 Other:0>)