一、扫描方式
想得到活着的主机,快速的方法(试验了下好像不太对)
nmap -sL 192.168.1.0/24
使用ping的扫描方法,它发送ICMP回送请求到特定范围的IP地址并等待响应,(默认既使用ICMP PING y也是用TCP PING)
nmap -sP 192.168.1.0/24
TCP连接扫描
nmap -sT 192.168.1.0/24
RPC扫描来扫描每个RPC服务打开的端口
nmap -sR 192.168.1.0/24
这样的扫描方式杀死建立基本的TCP连接,这样的连接很可能被做出应答的服务记录下来,有的时候,我们想做的隐蔽些
可以发送一个SYN,对方如果是RST,则假定这个端口是关闭的,如果对方回复正常的响应,那么我们发送一个RST强行终止连接,因为没完成TCP的三次握手,则许多服务不会记录这种链接,参数为-sS
nmap -sS 192.168.1.0/24
上述方法IDS将会监视这种类型的扫描,我们可以有一种更隐蔽的扫描,发送一个FIN报文,该报文通常用来关闭一个连接,开放的端口会忽视,关闭的端口则会以RST响应,这样连接都没建立,所以更加隐蔽,但是一些操作系统的TCP/IP栈不按照这个约定,所以错误率会高一些,这就是用准确性来换取隐蔽
nmap -sF 192.168.1.0/24
圣诞树扫描(设置一个报文的FIN,URG,PUSH标志,如果吧报文画出来,这几个标志的组合看起来像一棵圣诞树)
nmap -sX 192.168.1.0/24
NULL扫描(把所有标志都关闭)
nmap -sN 192.168.1.0/24
有时nmap告诉你端口被过滤,意味着有防火墙或端口过滤器干扰了nmap,使其不能准确判断端口是打开还是关闭的,然而,有些防火墙只过滤掉进入的连接,如果想测试防火墙的规则,可以针对防火墙对主机进行一次ACK扫描,当不属于某个连接的ACK报文发送后,接受方应该发送一个RST对他进行响应,如果接收到RST,说明端口没被过滤,否则说明被过滤了,具体命令:
nmap -sA 192.168.1.0/24
扫描UDP端口,发送一个空的UDP报文并接受等待返回的ICMP“端口不可达”消息,如果接受不到任何消息,端口可被认为是打开的,如果返回的ICMP数据被防火墙阻塞或UDP流量被阻塞,则也收不到任何信息,所以该问题不好解决
nmap -sU 192.168.1.0/24
扫描协议(可识别操作系统类型)
nmap -O 192.168.1.0/24
-T设置扫描时间间隔
nmap -T Sneaky -sS 192.168.1.131 -p 80
TCP Reverse Ident 扫描,如果扫描的远程主机正在运行identd(默认在tcp端口113监听),通过他可以找出以根权限运行的服务(能对有漏洞的服务进行缓冲区溢出的攻击),他不能进行隐蔽扫描,因为要与对面identd建立有效连接
nmap -sT -I 192.168.1.131
nmap可以对多口跑的服务的版本进行检测(从nmap3.45版本开始)
nmap -sV 192.168.1.131