web安全工具--Nmap
简介:Nmap是一款针对大型网络的端口扫描工具,尽管它也适用于单机扫描。在不同情况下,你可能需要隐藏扫描、越过防火墙扫描或者使用不同的协议进行扫描,比如:UDP、TCP、ICMP 等)。它支持:Vanilla TCP connect 扫描、TCP SYN(半开式)扫描、TCP FIN、Xmas、或NULL(隐藏)扫描、TCP ftp代理(跳板)扫描、SYN/FIN IP 碎片扫描(穿越部分数据包过滤器)、TCP ACK和窗口扫描、UDP监听ICMP端口无法送达扫描、ICMP扫描(狂ping)、TCP Ping扫描、直接RPC扫描(无端口映射)、TCP/IP指纹识别远程操作系统,以及相反身份认证扫描等。Nmap同时支持性能和可靠性统计,例如:动态延时计算,数据包超时和转发,并行端口扫描,通过并行ping侦测下层主机。
常用功能:主机探测,端口探测,信息收集,漏洞探测等等
一、主机探测:
1、扫描单个主机 :nmap 192.168.5.91
2、扫描整个子网: nmap 192.168.5.0/24
3、扫描多个主机: namp 192.168.5.91 192.168.5.92
4、扫描一个范围内的目标:nmap 192.168.5.1-200 (扫描192.168.5.1到192.168.5.200内的所有主机)
5、如果你有一个IP地址表,可以将其保存为一个txt文件,和nmap在同一目录下,扫描整个文件内的主机:nmap -iL ip.txt
6、如果你想在5基础上不对某个Ip地址不进行主机探测,则可以使用下面这个命令:nmap -iL ip.txt exclude 10.40.130.2
二、端口探测
常用命令:nmap -F -sT -v 192.168.5.89
参数解释:
-F :扫描100个最有可能开放的端口
-v :获取扫描的信息
-sT :使用TCP扫描,可以省略,默认就是使用TCP扫描
-p :指定要使用的端口如:nmap -p 80,445,3306
扫描方式解释:
TCP扫描(sT):通过建立TCP三次握手连接进行信息的传递
命令:nmap -sT -p 80 192.168.5.1
扫描特点:扫描速度快,准确性高,对操作者没有权限的要求,但容易被防火墙和IDS发现。
扫描原理:
wireshark抓包:
1、客户端发送SYN请求包
2、 服务器返回SYN+ACK,表明端口开放
3、客户端返回ACK给服务器,表明连接已建立
4、客户端主动断开连接
SYN扫描(sS):通过客户端不和服务器建立TCP三次握手进行端口扫描
命令:nmap -sS -p 22 192.168.5.1
扫描特点:因为未建立起来三次完整的握手,所以不容易被防火墙拦截和日志记录,但是这种扫描需要管理员权限,对应Linux下的root权限,Windows下的system权限。
扫描原理:
wireshark抓包:
1、客户端向服务端发送SYN请求包
2、服务端响应回复SYN+ACK数据包
3、客户端发送RST包释放连接
UDP端口扫描(sU):通过UDP协议去探测目标是否开启对应的UDP端口
命令:nmap -v -p 1-300 -sU 192.168.5.1
wireshark抓包
三、信息收集
nmap -O 192.168.5.80
nmap -A 192.168.5.80
四、漏洞探测
nmap --script vuln