Nmap是一个主机扫描工具,图形化界面是Zenmap,分布式框架为Dnamp。
扫描方式
TCP SYN扫描 | nmap -sS 192.168.137.4 |
TCP连接扫描 | nmap -sT 192.168.137.4 |
UDP扫描 | nmap -sU 192.168.137.4 |
SCTP INIT扫描 | nmap -sY 192.168.137.4 |
TCP NULL扫描 | nmap -sN 192.168.137.4 |
TCP FIN扫描 | nmap -sF 192.168.137.4 |
TCP Xmas扫描 | nmap -sX 192.168.137.4 |
TCP ACK扫描 | nmap --scanflags=3 192.168.137.4 |
TCP窗口扫描 | nmap -sW 192.168.137.4 |
TCP Maimon扫描 | nmap -sM 192.168.137.4 |
自定义TCP扫描 | nmap --scanflags URGACKPSHRSTSYNFIN |
SCTP COOKIE ECHO扫描 | nmap -sZ 192.168.137.4 |
TCP空闲扫描 | nmap -sl zombie 192.168.137.4 |
IP协议扫描 | nmap -sO 192.168.137.4 |
FTP弹跳扫描 | nmap -b ftp rely host 192.168.137.4 |
PING扫描 | nmap -sP 192.168.137.4 |
无PING扫描 | nmap -P0 192.168.137.4 |
ARP PING扫描 | nmap -PR 192.168.137.4 |
TCP SYN PING扫描 | nmap -PS 192.168.137.4 |
UDP PING扫描 | nmap -PU 192.168.137.4 |
ICMP Ping Types扫描 | nmap -PE; -PP; -PM 192.168.137.4 |
主机选择
扫描单个IP | nmap 192.168.1.1 |
扫描主机 | nmap www.linuxplus.loca |
扫描一系列IP | nmap 192.168.1.1-20 |
扫描子网 | nmap 192.168.1.0/24 |
从文本文件获得扫描目标 | nmap -iL list-of-ips.txt |
无ping扫描:常用于防火墙禁止ping的情况 | nmap -P0 172.20.62.150 |
端口选择
扫描单个端口 | nmap -p 22 192.168.1.1 |
扫描一系列端口 | nmap -p 1-100 192.168.1.1 |
扫描100个最常见的端口(快速) | nmap -F 192.168.1.1 |
扫描所有65535端口 | nmap -p- 192.168.1.1 |
扫描指定端口 | nmap -p 80,22,3306 192.168.1.1 |
操作系统和服务检测
检测操作系统和服务 | nmap -A 192.168.1.1 |
标准服务检测 | nmap -sV 192.168.1.1 |
激进的服务检测 | nmap -sV --version-intensity 5 192.168.1.1 |
轻量Banner抓取检测 | nmap -sV --version-intensity 0 192.168.1.1 |
Nmap扫描结果输出格式
将默认输出保存到文件 | nmap -oN outputfile.txt 192.168.1.1 |
将结果保存为XML | nmap -oX outputfile.xml 192.168.1.1 |
为方便grep来保存格式 | nmap -oG outputfile.txt 192.168.1.1 |
保存所有格式 | nmap -oA outputfile 192.168.1.1 |
NSE脚本检测
使用默认安全脚本扫描 | nmap -sV -sC 192.168.1.1 |
获取脚本的帮助 | nmap --script-help=ssl-heartbleed |
使用特定的NSE脚本进行扫描 | nmap -sV -p 443 –script=ssl-heartbleed.nse 192.168.1.1 |
用一组脚本进行扫描 | nmap -sV --script=smb* 192.168.1.1 |
使用全部NSE脚本进行扫描 | nmap -sV -p- --script=all 192.168.1.1 |
端口状态
开放 | * Open |
关闭 | * Closed |
可能被过滤,可能网络阻塞 | Filtered |
可以访问,但未知端口处于开放还是关闭状态 | Unfiltered |
能确定端口事开放被过滤 | Open|Filtered |
不能确定端口事关闭还说被过滤 | Closed|Filtered: |
HTTP服务信息探测
从HTTP服务收集页面标题 | nmap --script=http-title 192.168.1.0/24 |
获取Web服务的HTTP头 | nmap --script=http-headers 192.168.1.0/24 |
从已知路径查找网络应用程序 | nmap --script=http-enum 192.168.1.0/24 |