发送数据包并更改其源IP

9
假设我有一个用Python编写的应用程序用于发送ping或电子邮件。如何使用Scapy将发送包的源IP地址更改为伪造的IP地址?
假设我的eth0分配的IP地址是192.168.0.100。我的电子邮件应用程序将使用此IP地址发送消息。但是,当它准备好发送时,我想操纵此数据包,以使其源IP不再是192.168.0.100,而是192.168.0.101。
我希望能够在不实施MITM的情况下完成此操作。
2个回答

9
你可以执行以下操作:
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)

如果您想了解更多有趣的示例,可以参考这个教程


1
你基本上想伪造你的IP地址。我建议你阅读网络和IP头数据包。这可以通过Python实现,但是你无法看到结果,因为你已经伪造了你的IP地址。要实现这一点,你需要预测序列号。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接