首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ARP请求欺骗

ARP请求欺骗
EN

Security用户
提问于 2018-01-31 09:29:58
回答 3查看 552关注 0票数 3

我正在研究一个基于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回复,而不是请求。有什么暗示吗?

EN

回答 3

Security用户

发布于 2018-01-31 13:01:28

你可以用替罪羊来做这个。一种方法是首先记录一个或多个ARP数据包:

代码语言:javascript
复制
pk = sniff(count=1, filter="arp")
pk.summary()

然后使用它构建您自己的ARP请求:

代码语言:javascript
复制
arppk = eval(pk[0].command())

现在您可以在arppk中设置自己的值:

代码语言:javascript
复制
arppk[ARP].hwsrc = 'AA:AA:AA:AA:AA:AA'

函数ls(ARP)向您展示了更多可用选项。

票数 1
EN

Security用户

发布于 2018-01-31 09:40:36

我认为你最好的选择是使用替罪羊

在互联网上也有很多生成数据包的例子。我确信还有其他的工具,但替罪羊是我在那种工作中使用的工具。

票数 0
EN

Security用户

发布于 2018-01-31 13:06:58

我建议使用模块替罪羊创建一个简单的Python脚本来制作包。

下面是您需要的语法类型的一个概念:

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/178781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档