一.nmap的介绍
nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端。确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统。总的来说,这就是一个工具,用来检测目标主机是否开启,其操作系统是什么,有那些端口是开启的,是否可以扫描到目标主机存在漏洞等等,从而制定渗透的计划。
二.nmap的六种端口
我们平常了解的是端口被划分为 open状态 或 者close 状态,nmap 将两者就行了细化,将端口划分为 open, closed, filtered, unfiltered, open|filtered, closed|filtered 六种状态。
1.open状态(开放状态)
nmap 发起两个 SYN 的请求,服务器上监听在此端口的进程会进行应答,会返回 SYN/ACK, nmap 收到服务端返还回来的应答后会发送两个 RST ,并不会和服务端建立通信连接,完成端口的探测。
2.closed状态(关闭状态)
nmap 发起两个 SYN 的请求,服务器上由于没有进程监听该端口,内核会返回 RST, nmap 收到服务端返还回来的 RST 报文,将探测结果定义为 closed 。
3.filtered状态(过滤状态)
服务端将收到的 nmap SYN 报文直接丢弃,不进行应答, 由于 nmap 直接发送了两个 SYN 报文,都没有收到应答,所以认定服务端开启了防火墙,将 SYN 报文丢弃。
4.unfiltered状态(未过滤状态)
端口被定义为Unfilterd只会发生在TCP ack扫描类型时当返回RST的报文。而端口被定义为filtered 状态的原因是是报文被防火墙设备,路由器规则,或者防火墙软件拦截,无法送达到端口,这通常表现为发送NMAP的主机收到ICMP报错报文。
5.open|filtered状态(开放或过滤状态)
这种状态主要是nmap无法区别端口处于open状态还是filtered状态。这种状态只会出现在open端口对报文不做回应的扫描类型中。
6. closed|filtered (关闭或者过滤状态)
这种状态主要出现在nmap无法区分端口处于closed还是filtered时。此状态只会出现在IP ID idle scan中。
三.nmap的简单使用
1.命令:nmap 目标IP地址
默认先检测目标IP主机是否开机,再探测常用的1000多个端口。
2.命令:nmap -vv 目标ip地址
查看目标详细信息
3.命令:nmap -Pn 目标IP地址
跳过主机扫描,不检测主机的存活,默认当前主机存活
4. 命令:nmap -sP 目标IP地址
使用ping扫描
5. 命令:nmap -scan-delay 10s 目标IP地址
每次延迟10秒后再发送数据包,防止大量的扫描记录引起对方的防护
6.命令:nmap -O 目标IP地址
检测目标的操作系统
7.命令:nmap -sV 目标IP地址
检测目标服务
8.命令:nmap -p 范围 目标IP地址
指定端口,指定的端口范围为0-65535,一共有65536个端口
9.命令:nmap -A 目标IP地址
全面扫描指定IP或域名的所有端口及其目标系统信息等
10.命令:nmap -PR 目标IP地址
ARP Ping扫描,通常在扫描局域网时使用,在内网的情况下,使用ARP ping扫描方式是最有效的,在本地局域网中防火墙不会禁止ARP请求,这就使得它比其他ping扫描都更加高效。
感谢观看!