Nmap是一个免费的开源工具,用于通过发送数据包并分析检索到的响应来发现计算机网络上的主机和服务。Nmap提供了一些用于探测计算机网络的功能,包括主机发现以及服务和操作系统检测。
Nmap可以提供有关目标的更多信息,包括反向DNS名称,设备类型和MAC地址。
主机发现–识别网络上的主机。例如,列出响应TCP和/或ICMP请求或打开特定端口的主机。
端口扫描–枚举目标主机上的打开端口。
操作系统检测–确定网络设备的操作系统和硬件特征。
版本检测–询问远程设备上的网络服务以确定应用程序名称和版本号。
使用Nmap脚本引擎(NSE)与目标支持进行可脚本化的交互。
Nmap的用法
通过标识可以建立或通过网络连接来审核设备或防火墙的安全性。
识别目标主机上的开放端口以准备审核。
网络列表,网络映射以及维护和资产管理。
通过识别新服务器来审核网络的安全性。
生成网络上主机的流量,响应分析和响应时间度量。
查找和利用网络中的漏洞。
DNS查询和子域搜索
NMAP命令速查表
以下部分以示例为例,说明了类别NMAP不同命令的用法-
基本扫描命令
目标 | 命令 | 例 | 扫描单个目标 | nmap[目标] | Nmap192.168.0.1 |
扫描多个目标 | nmap[target1,target2等 | nmap192.168.0.1192.168.0.2 |
扫描主机范围 | nmap[IP地址范围] | Nmap192.168.0.1-10 |
扫描整个子网 | nmap[IP地址/Cdir] | Nmap192.168.0.1/24 |
扫描随机主机 | nmap-iR[数字] | nmap-iR0 |
从扫描中排除目标 | nmap[目标]–排除[目标] | nmap192.168.0.1/24-不包括192.168.0.100、192.168.0.200 |
使用列表排除目标 | nmap[目标]–排除文件[list.txt] | nmap192.168.0.1/24–excludefilenotargets.txt |
执行积极扫描 | nmap-A[目标] | nmap-A192.168.0.1 |
扫描IPv6目标 | nmap-6[目标] | nmap-61aff:3c21:47b1:0000:0000:0000:0000:2afe |
发现选项
目标 | 命令 | 例 | 执行仅Ping扫描 | nmap-sP[目标] | nmap-sP192.168.0.1 |
不要Ping | nmap-PN[目标] | nmap-PN192.168.0.1 |
TCPSYNPing | nmap-PS[目标] | nmap-PS192.168.0.1 |
TCP确认Ping | nmap-PA[目标] | nmap-PA192.168.0.1 |
UDPPing | nmap-PU[目标] | nmap-PU192.168.0.1 |
SCTP初始化Ping | nmap-PY[目标] | nmap-PY192.168.0.1 |
ICMP回声平 | nmap-PE[目标] | nmap-PE192.168.0.1 |
ICMP时间戳Ping | nmap-PP[目标] | nmap-PP192.168.0.1 |
CMP地址掩码Ping | nmap-PM[目标] | nmap-PM192.168.0.1 |
IP协议Ping | nmap-PO[目标] | nmap-PO192.168.0.1 |
ARPPing | nmap-PR[目标] | nmap-PR192.168.0.1 | 跟踪路由 | nmap–traceroute[目标] | nmap–traceroute192.168.0.1 |
强制反向DNS解析 | nmap-R[目标] | nmap-R192.168.0.1 |
禁用反向DNS解析 | nmap-n[目标] | nmap-n192.168.0.1 |
备用DNS查找 | nmap–system-dns[目标] | nmap–system-dns192.168.0.1 |
手动指定DNS服务器 | nmap–dns-servers[服务器][目标] | nmap–dns服务器201.56.212.54192.168.0.1 |
创建主机列表 | nmap-sL[目标] | nmap-sL192.168.0.1/24 |
进阶扫描选项
目标 | 命令 | 例 | TCPSYN扫描 | nmap-sS[目标] | nmap-sS192.168.0.1 |
TCP连接扫描 | nmap-sT[目标] | nmap-sT192.168.0.1 |
UDP扫描 | nmap-sU[目标] | nmap-sU192.168.0.1 |
TCP空扫描 | nmap-sN[目标] | nmap-sN192.168.0.1 |
TCPFIN扫描 | nmap-sF[目标] | nmap-sF192.168.0.1 |
圣诞扫描 | nmap-sX[目标] | nmap-sX192.168.0.1 |
TCP确认扫描 | nmap-sA[目标] | nmap-sA192.168.0.1 |
自定义TCP扫描 | nmap–scanflags[标志][目标] | nmap–scanflagsSYNFIN192.168.0.1 |
IP协议扫描 | nmap-sO[目标] | nmap-sO192.168.0.1 |
发送原始以太网数据包 | nmap–send-eth[目标] | nmap–send-eth192.168.0.1 |
发送IP数据包 | nmap–send-ip[目标] | nmap–发送IP192.168.0.1 |
端口扫描选项
目标 | 命令 | 例 | 执行快速扫描 | nmap-F[目标] | nmap-F192.168.0.1 |
扫描特定端口 | nmap-p[端口][目标] | nmap-p21-25,80,139,8080192.168.1.1 |
按名称扫描端口 | nmap-p[端口名称][目标] | nmap-pftp,http*192.168.0.1 |
按协议扫描端口 | nmap-sU-sT-pU:[端口],T:[端口][目标] | nmap-sU-sT-pU:53,111,137,T:21-25,80,139,8080192.168.0.1 |
扫描所有端口 | nmap-p'*'[目标] | nmap-p'*'192.168.0.1 |
扫描顶部端口 | nmap–top-ports[数字][目标] | nmap–顶级端口10192.168.0.1 |
执行顺序端口扫描 | nmap-r[目标] | nmap-r192.168.0.1 |
版本检测
目标 | 命令 | 例 | 操作系统检测 | nmap-O[目标] | nmap-O192.168.0.1 |
提交TCP/IP指纹 | www.nmap.org/submit/ |
|
指纹识别 |
|
|
尝试猜测未知的操作系统 | nmap-O–osscan猜测[目标] | nmap-O–osscan-guess192.168.0.1 |
服务版本检测 | nmap-sV[目标] | nmap-sV192.168.0.1 |
对版本扫描进行故障排除 | nmap-sV–版本跟踪[目标] | nmap-sV–版本跟踪192.168.0.1 |
执行RPC扫描 | nmap-sR[目标] | nmap-sR192.168.0.1 |
防火墙规避技术
目标 | 命令 | 例 | 增加数据包 | nmap-f[目标] | nmap-f192.168.0.1 |
调整特定的MTU | nmap–mtu[MTU][目标] | nmap–mtu32192.168.0。 |
使用诱饵 | nmap-DRND:[数字][目标] | nmap-DRND:10192.168.0.1 |
僵尸扫描 | nmap-sI[僵尸][目标] | nmap-sI192.168.0.38 |
手动指定源端口 | nmap–source-port[端口][目标] | nmap–源端口10192.168.0.1 |
追加随机数据 | nmap–数据长度[大小][目标] | nmap–数据长度2192.168.0.1 |
随机目标扫描顺序 | nmap–randomize-hosts[目标] | nmap–randomize-ho192.168.0.1-20 |
欺骗MAC地址 | nmap–spoof-mac[MAC|0|供应商][目标] | nmap–spoof-macCis192.168.0.1 |
发送错误的校验和 | nmap–badsum[目标] | nmap–badsum192.168.0.1 |
故障排除和调试
目标 | 命令 | 例 | 获得帮助 | nmap-h | nmap-h |
显示Nmap版本 | 纳帕 | 纳帕 |
详细输出 | nmap-v[目标] | nmap-v192.168.0.1 |
调试 | nmap-d[目标] | nmap-d192.168.0.1 |
显示端口状态原因 | nmap–原因[目标] | nmap–原因192.168.0.1 |
仅显示开放端口 | nmap–open[目标] | nmap–打开192.168.0.1 |
跟踪数据包 | nmap–packet-trace[目标] | nmap–packet-trace192.168.0.1 |
显示主机网络 | nmap–iflist | nmap–iflist |
指定网络接口 | nmap-e[接口][目标] | nmap-eeth0192.168.0.1 |
NMAP脚本引擎
目标 | 命令 | 例 | 执行个别脚本 | nmap–script[script.nse][目标] | nmap–scriptbanner.nse192.168.0.1 |
执行多个脚本 | nmap–script[表达式][目标] | nmap–脚本'http-*'192.168.0.1 |
脚本类别 | 全部,身份验证,默认,发现,外部,侵入性,恶意软件,安全,漏洞 |
|
按类别执行脚本 | nmap–script[类别][目标] | nmap–脚本“非侵入式”192.168.0.1 |
执行多个脚本类别 | nmap–script[category1,category2等] | nmap–脚本“默认或安全”192.168.0.1 |
脚本疑难解答 | nmap–脚本[脚本]–脚本跟踪[目标] | nmap–脚本banner.nse–脚本跟踪192.168.0.1 |
更新脚本数据库 | nmap–script-updatedb | nmap–script-updatedb |