nmap:OS 扫描哪个版本并且 MAC 地址开始需要 root 权限?

nmap: Which version did OS scan and MAC address start needing root permissions?

我想要 运行 nmap 的 OS 识别能力,并且能够在没有 sudo 权限的情况下获得设备的 MAC 地址。这在哪些版本中发生了变化?

据我所知,OS指纹识别和MAC地址功能一直需要root权限。最早在 CHANGELOG 中提到此要求是针对 Nmap 4.23RC2 [2007-11-18]:

o Reworded an error message after a woman reported that it was "highly
  offensive and sexist".  She also noted that "times have changed and
  many women now use your software" and "a sexist remark like the one
  above should have no place in software."  The message was: "TCP/IP
  fingerprinting (for OS scan) requires root privileges. Sorry,
  dude.".  I checked svn blame to call out the insensitive,
  chauvinistic jerk who wrote that error message, but it was me :).

作为 MAC 地址部分的解决方法(这是直接从网络嗅探数据包以收集响应的副作用,需要 root),您可以使用 arp -an 命令列出系统 ARP table 中的条目,这些条目由 Nmap activity 中的 OS 填充。 Nmap 本身不会检查这个,因为检查 ARP 缓存的方法不是 portable.