简介

Netdiscover是一个网络地址发现工具,主要针对那些 没有 dhcp 服务器的无线网络,它也适用于集线器/交换网络。 它基于 arp 数据包,它将发送 arp 请求并嗅探回复。 

Netdiscover是一个主动/被动地址侦察工具,主要专为那些没有 dhcp 服务器的无线网络而开发,当您正在使用。它也可以用于集线器/交换网络。

构建在libnet和libpcap之上,可以被动在线检测主机,或者通过主动发送 ARP 请求来搜索它们。

Netdiscover 还可用于检查您的网络 ARP 流量, 或使用自动扫描模式查找网络地址,该模式将扫描共同的本地网络。

Netdiscover使用OUI表来显示每个MAC的供应商地址被发现并且对于安全检查或在渗透测试。 

要求

  • libpcap
  • ibnet  > 1.1.2

经测试可在 Linux、Solaris、MacOS X 和 OpenBSD 上运行,其他 UNIX 也可以运行

安装

源码安装

克隆项目源码。建议挂代理进行克隆下载,不然可能会报错。

git clone https://github.com/netdiscover-scanner/netdiscover.git

进入目录并查看

cd netdiscover/
ls

./autogen.sh

./configure

make

开始安装

sudo make install

输入以下命令,如果出现这个界面就说明安装成功了。

netdiscover -h

APT包管理器安装

Kali Linux 默认安装好 netdiscover 工具。也可以通过以下命令进行安装

sudo apt install netdiscover

使用

1. -h

netdiscover 帮助手册

netdiscover -h

2. 常规使用

netdiscover

请通过root权限去运行。后面的命令都是。

通过运行命令,可以发现当前我的局域网上有 10 台设备在线。其中 192.168.174.2 是网关。

如果未启用 -r、-l 或 -p,netdiscover 将扫描常见的 LAN 地址。

注意:如果想结束扫描,请按 Ctrl + C 停止运行 netdiscover 工具。

3. -i device

您的网络设备。用于嗅探和注入数据包的网络接口。如果未指定接口,则将使用第一个可用接口。

netdiscover -i eht0

4. -r range

扫描给定范围,而不是自动扫描。 192.168.6.0/24,/16,/8。

扫描给定范围而不是自动扫描。有效范围值例如:192.168.0.0/24、192.168.0.0/16 或 192.168.0.0/8。目前,可接受的范围仅为 /8、/16 和 /24。

netdiscover -i eth0 -r 192.168.174.0/24 

/24 是指扫描 192.168.174.1—— 192.168.174.255 的 ip 范围。相当于扫描该网段的所有 ip 地址。这里的 Finished 就说明扫描完成了。

5. -l file

扫描给定文件中包含的范围列表。扫描给定文件中包含的范围。每行必须仅包含一个范围。

netdiscover -i eth0 -l file.txt 

6. -p passive mode

不发送任何内容,仅嗅探。启用被动模式。在被动模式下,netdiscover 不会发送任何内容,而只会嗅探。

netdiscover -i eth0 -r 192.168.174.0/24 -p 

7. -m file

扫描已知 MAC 和主机名列表

netdiscover -i eth0 -m file.txt  

8. -F filter

自定义 pcap 过滤器表达式(默认值:“arp”)

netdiscover -i eth0 -F arp 

9. -s time

每次 ARP 请求之间的休眠时间(毫秒)。

每次 ARP 请求注入之间的休眠时间(以毫秒为单位)。(默认值为 1)

netdiscover -i eth0 -s 1

10. -c count

发送每个 ARP 请求的次数(适用于有数据包丢失的网络)。

发送每个 ARP 请求的次数。适用于存在数据包丢失的网络,因此它将扫描每个主机的给定次数。(默认值为 1)

netdiscover -i eth0 -r 192.168.174.0/24 -c 10 

11. -n node

用于扫描的最后一个源 IP 八位字节(从 2 到 253)

用于扫描的源 IP 的最后一个 IP 八位字节。如果已使用默认主机 (x.x.x.67),您可以更改它。(允许的范围是 2 到 253,默认值为 67)

netdiscover -i eth0 -n 67 

12. -d

忽略自动扫描和快速模式的主配置文件。

忽略主目录中的配置文件(仅适用于自动扫描和快速模式)。这将使用自动扫描和快速模式的默认范围和 IP。

netdiscover -i eth0 -d 

13. -f

启用快速模式扫描,节省大量时间,推荐用于自动扫描。

启用快速模式扫描。这将仅扫描每个网络上的 .1、.100 和 .254。此模式在搜索正在使用的范围时很有用。找到这样的范围后,您可以进行特定范围扫描以查找在线框。

netdiscover -i eth0 -f

14. -P

以适合其他程序解析的格式打印结果并在主动扫描后停止。

生成适合重定向到文件或供其他程序解析的输出,而不是使用交互模式。启用此选项后,netdiscover 将在扫描给定范围后停止。

netdiscover -i eth0 -P 

15. -L

与 -P 类似,但在主动扫描完成后继续监听。

类似于 -P,但在主动扫描后继续执行程序以被动捕获 ARP 数据包。阶段以被动方式捕获 ARP 数据包。

netdiscover -i eth0 -L 

16. -N

不打印标题。仅在启用 -P 或 -L 时有效。

netdiscover -i eth0 -P -N 

17. -S

启用每个请求之间的休眠时间抑制(硬核模式)

(已弃用)启用每个请求之间的睡眠时间抑制。如果设置,netdiscover 将在扫描完
255 个主机后休眠,而不是在每个主机后休眠。此模式在 netdiscover 0.3 beta4 及之前版本中使用。在存在数据包丢失的网络或信号水平较低的无线网络中,请避免使用此选项。(也称为硬核模式)

 netdiscover -i eth0 -S

额外

如果未启用被动模式 (-p)、扫描列表 (-l) 或扫描范围 (-r) 选项,则 netdiscover 将扫描常用 LAN 地址 (192.168.0.0/16、172.16.0.0/12 和 10.0.0.0/8)。

在 netdiscover 运行时候可以按住的一些按键。

屏幕控制键

h

显示帮助屏幕

j

向下滚动(或向下箭头)。

k

向上滚动(或向上箭头)。

.

向上滚动页面。

,

向下滚动页面。

q

关闭帮助屏幕或结束应用程序。

屏幕视图

a

显示 ARP 回复列表。

r

显示 ARP 请求列表。

u

显示检测到的唯一主机。

综合使用

1. 扫描 eth0 上的常见 LAN 地址

netdiscover -i eth0

2. 快速扫描 eth0 上的常见 LAN 地址(仅搜索网关)

netdiscover -i eth0 -f

3. 扫描一些固定范围

netdiscover -i eth0 -r 172.26.0.0/24
netdiscover -r 192.168.0.0/16
netdiscover -r 10.0.0.0/8

4. 扫描常见 LAN 地址,休眠时间为 0.5 毫秒,而不是默认值 1

netdiscover -s 0.5

5. 以快速模式扫描固定范围,休眠时间为 0.5 毫秒,而不是默认值 1

netdiscover -r 192.168.0.0/16 -f -s 0.5

6. 使用 101 作为源 IP 的最后一个八位字节扫描范围

netdiscover -r 10.1.0.0/16 -n 101

7. 仅嗅探 ARP 流量,不发送任何内容

netdiscover -p

总结

Netdiscover 是一款高效的被动网络侦察工具,可快速发现局域网内的活动设备。通过简单易用的界面和精准的数据扫描功能,它为网络管理员和安全从业者提供了便捷的网络可视化支持。

在此特别强调,本教程仅在合法授权的情况下进行测试和研究,请勿用于其他用途。未经授权使用此类工具可能会侵犯他人隐私,触犯相关法律,任何因此引发的法律或利益纠纷与本人无关。

欢迎各位大佬,小白来找我交流。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐