信息搜集工具 之 Nmap
Nmap是目前较为广泛使用的一款功能全面的端口扫描工具,它由Fyodor编写并维护,由于Nmap的使用灵活,操作方便,它已经是渗透测试人员必备的一个工具
安装工具方法:
Linux: apt-get install nmap
Windows: https://nmap.org/dist/nmap-7.70-setup.exe GUI图形工具
除了端口扫描外,还具备了一下功能
主机探测:
Nmap可查找目标网络中的在线网络主机,默认情况下,Nmap通过4中方式—— ICMP echo
请求(ping) 向443端口发送 TCP SYN数据包,向80端口发送TCP ACK包和ICMP 时间戳请求——发现目标主机服务/版本检测:
在发现开放端口后,Nmap可进一步检查目标主机的检测服务协议,应用程序名称,版本号等信息操作系统检测:
Nmap向远程主机发送一系列数据包,并能够将远程主机的响应与操作系统指纹数据库进行比较,如果匹配到了结果,将会显示操作系统信息,或者有可能无法识别目标主机的操作系统网络路由跟踪:
它通过多种协议访问目标主机的不同端口,以尽可能访问目标主机,Nmap路由跟踪功能从TTL的高值开始测试,逐渐递减TTL,直到减为0为止脚本引擎:
扩充了Nmap的用途,可以利用此脚本 ,可检测部分网络服务方面漏洞,还可以枚举目标系统的资源
Nmap可识别的6中端口状态,这6中端口状态如下:
开放(open)
: 工作于开放端口的服务端的应用程序可以受理TCP连接,接受UDP数据包或者响应SCTP(流控制传输协议)请求关闭(close)
: 可以访问有关的端口,但是没有应用程序运行在这个端口上过滤(filter)
: Nmap不能确定端口是否开放,包过滤设备屏蔽了我们向目标发送的探测包未过滤(Unfiltered)
: 虽然可以访问到指定端口,但Nmap不能确定该端口是否处于开放状态打开 | 过滤
: Nmap认为指定端口处于开放状态或者过滤状态,但是不能确定处于两者之中的哪种状态,在遇到没有响应的开放端口时,Nmap会做出这种判断