nmap是一个网络端口扫描软件,用来扫描网上电脑开放的网络连接端口,确定哪些服务运行在哪些端口,并且推断计算机运行哪个os。它是网络管理员必用的软件之一,渗透测试人员也可以用它评估网络系统安全。下面介绍kali linux中nmap的用法。
①查看nmap当前版本:
nmap -V
②查看本地路由与接口:
nmap --iflist
③扫描网络上的在线主机:nmap 192.168.1.1/24
扫描结果发现3个在线主机,分别是路由器、Windows宿主机和Kali虚拟机。默认情况下nmap只扫描TCP端口。
(如果使用“-sP”选项,可以简单的检测网络中有哪些在线主机,该选项会跳过端口扫描和其他一些检测)
④扫描指定主机上的端口:
nmap -p 443 192.168.1.107(我扫了两台机器,这台是开了防火墙的。可以看到443端口是被过滤了的)
nmap -p 443 192.168.1.104(这台没有开防火墙,可以看到443端口是open的,提供的是https服务)
filtered这种端口状态:由于包过滤阻止探测报文到达端口, Nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由器规则 或者主机上的软件防火墙。这样的端口让攻击者感觉很挫折,因为它们几乎不提供任何信息。
⑤检测指定主机的操作系统版本:
nmap -O 192.168.1.107
检查结果给出所有可能性结果和相应概率
⑥扫描指定主机防火墙开启状态:
nmap -sA 192.168.1.107(结果为unfiltered(未过滤状态),表示未开启防火墙)
nmap -sA 192.168.1.104(结果为filtered(过滤状态),表示已开启防火墙)
⑦执行一次隐蔽的扫描:
nmap -sS 192.168.1.104
nmap还有很多很多命令,大家可以看一位大神的博客(https://blog.csdn.net/u012318074/article/details/73187420)中概括下来的的思维导图: