发送数据包并更改其源IP

时间:2014-12-12 17:26:01

标签: python ip packet scapy

假设我有一个用python编写的应用程序来发送ping或电子邮件。如何使用例如Scapy?

将发送的数据包的源IP地址更改为伪造的IP地址

考虑分配给我的eth0的IP地址是192.168.0.100。我的电子邮件应用程序将使用此IP发送消息。但是,我想在它准备好发送之后立即操作这个数据包,因此它的源IP不是192.168.0.100而是192.168.0.101。

我想在不必实施MITM的情况下这样做。

2 个答案:

答案 0 :(得分:3)

您可以执行以下操作:

from scapy.all import *

A = '192.168.0.101' # spoofed source IP address
B = '192.168.0.102' # destination IP address
C = 10000 # source port
D = 20000 # destination port
payload = "yada yada yada" # packet payload

spoofed_packet = IP(src=A, dst=B) / TCP(sport=C, dport=D) / payload
send(spoofed_packet)

对于一些更有趣的示例,您可以参考this tutorial

答案 1 :(得分:0)

你基本上想要欺骗你的IP地址。我建议你阅读网络和IP头包。这可以通过python实现,但你无法看到结果,因为你欺骗了你的ip.To能够要做到这一点,你需要预测序列号。