我正在研究一个基于SDN的接入/回传网络。对于一些实验,我需要从我网络中的一个节点生成一个ARP请求,假装是另一个节点。从本质上说,这个ARP请求将由控制器注入到网络中,但目前我必须通过在本地生成ARP数据包来测试该解决方案是否有效。
让我们假设连接到我的网络的客户端(我没有控制)有MAC AA:AA:AA:AA:AA:AA。从一个具有不同MAC的节点的接口中,我希望生成一个ARP请求(广播消息),该请求具有源MAC AA:AA:AA:AA:AA:AA (客户端的请求)。
我需要一个CLI工具,它可以发送精心构建的ARP请求(一种可以指定src的arping )。我试过使用pachETH,但它需要pcap通过CLI工作,而ETTERCAP似乎生成ARP回复,而不是请求。有什么暗示吗?
发布于 2018-01-31 13:01:28
你可以用替罪羊来做这个。一种方法是首先记录一个或多个ARP数据包:
pk = sniff(count=1, filter="arp")
pk.summary()然后使用它构建您自己的ARP请求:
arppk = eval(pk[0].command())现在您可以在arppk中设置自己的值:
arppk[ARP].hwsrc = 'AA:AA:AA:AA:AA:AA'函数ls(ARP)向您展示了更多可用选项。
发布于 2018-01-31 09:40:36
我认为你最好的选择是使用替罪羊
在互联网上也有很多生成数据包的例子。我确信还有其他的工具,但替罪羊是我在那种工作中使用的工具。
发布于 2018-01-31 13:06:58
我建议使用模块替罪羊创建一个简单的Python脚本来制作包。
下面是您需要的语法类型的一个概念:
from scapy.all import *
mode = "who-has"
destinationMac = "FF:FF:FF:FF:FF:FF"
sourceMac = "AA:AA:AA:AA:AA:AA"
destinationIP = "192.168.x.x"
sourceIP = "192.168.x.x"
sendp(Ether(dst=destinationMac, src=sourceMac)/ARP(hwsrc=sourceMac, pdst=destinationIP, psrc=sourceIP, op=mode), verbose=0)https://security.stackexchange.com/questions/178781
复制相似问题