网络扫描是渗透测试的步骤之一。有不同的和流行的工具来扫描网络线masscan,nmap等。Arp扫描是一种专门设计用来扫描网络层2或mac或以太网Arp数据包的工具。
安装
我们可以安装 arp-scan
使用以下命令的工具。
$ sudo apt install arp-scan -y

救命
我们可以使用打印帮助信息 -h
选项。
$ arp-scan -h

语法
Usage: arp-scan [options] [hosts...]
扫描本地网络
arp扫描最基本的用法是用一个名为 --localnet
或 -l
. 这将用arp包扫描整个本地网络。在使用arp扫描时,我们需要root权限。
$ arp-scan --localnet

指定网络接口
企业环境需要多个网络接口来进行备份、负载平衡等。在这种情况下,我们需要指定网络接口。我们将使用 -i
选项。在本例中,我们将使用名为 ens3
.
$ arp-scan --interface=ens3 --localnet

设置源Mac地址
在扫描过程中,我们将使用现有的mac地址。这可能会产生一些关于扫描的线索。我们可以在扫描过程中更改源mac地址。这将使所有发送的数据包具有不同于我们的硬件mac地址的mac地址。我们将使用 --destaddr
或 -T
选项。
$ arp-scan -T aa:bb:cc:dd:ee:ff
设置目标Mac地址
另一个有用的选项是使用 --srcaddr
或 -S
选项。
$ arp-scan -S aa:bb:cc:dd:ee:ff
指定Vlan
在现实网络中,一个接口可以承载多个网络。这通常是通过使用称为虚拟局域网或简单的VLAN的多路复用协议来实现的。如果接口是trunk,这意味着接口承载多个VLAN,我们可能需要指定VLAN id --vlan
或 -Q
选项指定VLAN id。在本例中,我们将只扫描 VLAN 10
.
$ arp-scan -i ens3 -Q 10
将接收到的数据包写入Pcap
如果扫描主机返回的响应对我们很重要,我们可以将它们保存在 pcap
格式。Pcap格式是支持的工具,如tcpdump,wireshark等,我们将帮助我们 -pcapsavefile
或 -W
指定pcap文件的选项。
$ sudo arp-scan --localnet -W scan.pcap

我们可以用tcpdump读取pcap文件,如下所示。
$ tcpdump -r scan.pcap
要获得关于tcpdump的更多信息,请阅读以下教程。
相关文章: 如何安装Nmap