在MacOS X或任何其他UNIX上,有没有办法通过shell(例如手动或shell脚本)发送自定义(和事件未被请求)arp响应? 另外,有没有办法让软件为当前子网中的所有IP请求MAC表示而不发送ping任何人?
答案 0 :(得分:4)
是的。这种活动用于ARP欺骗和ARP中毒攻击,并且是针对ex进行的。按arpspoof
。如果您想要发现主机的MAC,当您知道其IP并且它位于您的广播域(LAN)中时,请使用arping
。 ARP是第2层协议,因此它的数据包不会被路由器转发,但它比ICMP echo(ping)更可靠。
一些工具:
arp
- 标准程序(win / unix)
用于列出主机的IP-MAC地址
关联缓存,其中包含
已经学会了知识产权
arping
- 发送ARP的unix程序
请求给定的IP并显示
收到的ARP响应中包含的MAC
arpspoof
- 来自dsniff软件包的程序生成虚假ARP响应
答案 1 :(得分:1)
packet generator可能会解决问题。维基百科页面链接到一些实现,但我不知道它们是否适用于OSX。
答案 2 :(得分:1)
还有arp-scan
使用libpcap
;和arpdropper
使用libnet
。
要被动(或主动)嗅探您的网络以获取ARP数据包并显示生成数据包的计算机的IP和MAC地址,您可以使用名为ArpSpyX的Mac OS X应用程序。
# arpdropper requires http://sourceforge.net/projects/libnet-dev/ to compile
# (libnet & arpdropper successfully compiled on Mac OS X 10.6.8)
curl -LO http://thebends.googlecode.com/svn/trunk/misc/arpdropper.c
gcc -Wall -Wextra -lnet -o arpdropper arpdropper.c
./arpdropper
# Usage: ./arpdropper -i <device> -s <source ip> -d <dest ip>
# For arp replies:
# ./arpdropper -r -i <device> -s <source ip> -m <source mac> -d <dest ip>
# using nmap
# get a pre-compiled Mac OS X version of nmap at:
# http://nmap.org/download.html#macosx or
# http://www.berndsworld.com/downloads/
nmap -PR -oN nmap-arpscan.txt 192.168.0.0/16