启动命令后出错 > nmap
dnet: Failed to open device eth0 after installing NMAP.
QUITTING!
nmap
就我而言,错误是通过Snap安装引起的。
为了让 nmap 工作,我必须告诉 snap 将它连接到网络控制:
sudo snap connect nmap:network-control
之后一切正常。
TLDR:使用 --unprivileged nmap 选项。
当我尝试使用最新可用版本 nmap 7.91、npcap 1.31 在 Windows 8.1 和 Windows 7 中通过 Wireguard 0.3.14 隧道扫描/测试主机时,我遇到了同样的问题。尝试了几种解决方案/组合,以管理员身份运行,重新安装等,除了降级到 Winpcap 4.1.3(最后一个可用),结果相同:
C:\Windows\system32>nmap -n -P0 -p 22 192.168.20.1
Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower.
Starting Nmap 7.91 ( https://nmap.org ) at 2021-06-08 13:28 Hora de verano central (México)
dnet: Failed to open device eth0
QUITTING!
奇怪的是,接口列表nmap --iflist
没有显示与之关联的设备名称eth0
(也没有显示 MAC 地址,可能是这里的 Wireguard 接口驱动程序安装/挂钩错误)。相关线路:
C:\Windows\system32>nmap --iflist
Starting Nmap 7.91 ( https://nmap.org ) at 2021-06-08 13:32 Hora de verano central (México)
************************INTERFACES************************
DEV (SHORT) IP/MASK TYPE UP MTU MAC
eth0 (eth0) 10.10.252.92/32 ethernet up 65535 00:00:00:00:00:00
:
DEV WINDEVICE
eth0 <none>
相关route print
:
C:\Windows\system32>route print
===========================================================================
Interface list
8...........................Wintun Userspace Tunnel #77
:
IPv4 Route table
===========================================================================
Active routes:
Network Destination Net mask Gateway Interface Metric
192.168.20.0 255.255.255.0 On-link 10.10.252.92 5
192.168.20.255 255.255.255.255 On-link 10.10.252.92 261
使用 --unprivileged 选项解决了它:
C:\Windows\system32>nmap --unprivileged -n -P0 -p 22 192.168.20.1
Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower.
Starting Nmap 7.91 ( https://nmap.org ) at 2021-06-08 13:22 Hora de verano central (MÚxico)
Nmap scan report for 192.168.20.1
Host is up (0.20s latency).
PORT STATE SERVICE
22/tcp open ssh
Nmap done: 1 IP address (1 host up) scanned in 0.29 seconds
安装nmap-7.80-setup.exe后,请安装与最新 Windows 10 版本完全兼容的npcap-0.9986.exe 。
如果您也在同一台机器上使用 Nessus,则无法使用 nmap。Nessus 将使用 NPCAP,NMAP 也需要使用 NPCAP。
并不总是为时已晚..我已经在网络上看到了这个“重新安装或安装 npcapxversion,但我的解决方案很简单且基于逻辑。只需在您要使用的网络适配器中启用 NPCAP 协议,在其他网络适配器上禁用。
重新安装的逻辑可能是 npcap 禁用和重新启用网络接口的顺序,将最高优先级(最后禁用和重新启用)给予您正在使用的实际接口。但是如果你不想弄乱接口优先级..按照我说的做,只在你需要nmap的适配器中启用NpCap。