nmap

本文最后更新于:2023年5月6日 晚上

Usage: nmap [Scan Type(s)] [Options] {target specification}

TARGET SPECIFICATION:

目标规范:

-iL <inputfilename>:                  从文件传入一个list
-iR <num hosts>:                        随机选择
--exclude <host1[,host2][,host3],...>:   排除host
--excludefile <exclude_file>:             从文件排除

HOST DISCOVERY:

主机发现:

-sL:                      List Scan :扫描探测
-sn:                       Ping Scan :不进行端口扫描
-Pn:                       跳过主机探测
-PS/PA/PU/PY[portlist]:     TCP SYN/ACK, UDP or SCTP 指定端口与协议探测
-PE/PP/PM:                   ICMP 回显、时间戳和网络掩码请求探测
-PO[protocol list]:           ip协议列表探测
-n/-R:                         DNS解析 never/always [默认: sometimes]
--dns-servers <serv1[,serv2],...>:   自定义 DNS 服务器
--system-dns:                   使用本机DNS
--traceroute:                    跟踪每个主机的跃点路径

SCAN TECHNIQUES:

扫描技术:

-sS/sT/sA/sW/sM:            TCP SYN/Connect()/ACK/Window size/Maimon(FIN/ACK)
-sU:                         UDP 扫描
-sN/sF/sX:                   标志位:Null, FIN, 和 Xmas scans(FIN、PSH、URG)
--scanflags <flags>:          自定义标志位
-sI <zombie host[:probeport]>: Idle scan 空闲扫描^1
-sY/sZ:                      SCTP INIT/COOKIE-ECHO scans SCTP协议扫描
-sO:                        IP protocol scan 判断目标主机所支持的协议。
-b <FTP relay host>:      FTP bounce scan 已弃用

1. 空闲扫描

PORT SPECIFICATION AND SCAN ORDER:

端口规范和扫描顺序:

-p <port ranges>:             指定端口
--exclude-ports <port ranges>:   排除端口
-F:                            快速扫描,100个
-r:                          顺序扫描
--top-ports <number>:      指定数量常见端口
--port-ratio <ratio>:    扫描可能性大于指定ratio的端口,来自nmap统计

SERVICE/VERSION DETECTION:

服务/版本探测:

-sV:                         服务版本探测
--version-intensity <level>:   探测等级 0-9
--version-light:             等级限制,最高为 2
--version-all:               最高等级探测 9
--version-trace:             显示版本探测信息

SCRIPT SCAN:

脚本扫描:

-sC:                               默认脚本扫描:--script=default
--script=<Lua scripts>:             `,`分隔脚本列表
--script-args=<n1=v1,[n2=v2,...]>:    指定脚本参数
--script-args-file=filename:        通过文件提供参数
--script-trace:                    显示详情
--script-updatedb:                  更新脚本数据库
--script-help=<Lua scripts>:         脚本帮助

OS DETECTION:

系统探测:

-O:                      操作系统检测
--osscan-limit:          探测度限制
--osscan-guess:          积极

TIMING AND PERFORMANCE:

时序与性能:

-T<0-5>: 设置计时模板(越高越快)
--min-hostgroup/max-hostgroup <size>:                并发主机扫描组大小
--min-parallelism/max-parallelism <numprobes>:              并发运行的探针数量
--min-rtt-timeout/max-rtt-timeout/initial-rtt-timeout <time>:    指定最小、最大和初始化探针超时值
--max-retries <tries>:                                        允许探针重传的最大值
--host-timeout <time>:                                    指定单个主机扫描超时时长
--scan-delay/--max-scan-delay <time>:                    指定单个主机探针之间延迟控制;
--min-rate <number>:                                    指定每秒发送的探针数据包最小速率
--max-rate <number>:                                   指定每秒发送的探针数据包最大速率

FIREWALL/IDS EVASION AND SPOOFING:

防火墙/IDS规避与欺骗:

-f; --mtu <val>:                       分段数据包 (optionally w/given MTU)
-D <decoy1,decoy2[,ME],...>:           暗渡陈仓
-S <IP_Address>:                       源地址伪造
-e <iface>:                            指定网口
-g/--source-port <portnum>:            指定源端口
--proxies <url1,[url2],...>:           指定 HTTP/SOCKS4 代理中继连接
--data <hex string>:                   自定义payload到数据包
--data-string <string>:                自定义ASCII到数据包
--data-length <num>:                   添加随机长度数据到数据包
--ip-options <options>:                发送指定 IP 选项数据包
--ttl <val>:                           指定ttl
--spoof-mac <mac address/prefix/vendor name>: 指定mac地址
--badsum:                              伪造校验码

OUTPUT:

输出:

-oN/-oX/-oS/-oG <file>:    输出格式为:Normal, XML, s|<rIpt kIddi3,Grep适用
-oA <basename>:            上面的格式同时输出
-v:                        显示详细信息 (use -vv or -v2)
-d:                        显示调试信息 (use -dd or -d2)
--reason:                  显示端口处于特定状态的原因
--open:                    仅显示打开(或可能打开)的端口
--packet-trace:            显示数据包追踪
--iflist:                  打印主机interfaces和路由
--append-output:           附加到指定的输出文件
--resume <filename>:       恢复中止的扫描
--noninteractive:          禁用运行时交互
--stylesheet <path/URL>:   XSL 样式表,用于将 XML 输出转换为 HTML
--webxml:                  引用 Nmap.Org 中的样式表,以获得更可移植的 XML
--no-stylesheet:           防止将 XSL 样式表与 XML 输出关联

MISC:

杂项:

-6:                        使用IPv6 扫描
-A:                        启用操作系统检测、版本检测、脚本扫描和路由跟踪
--datadir <dirname>:       指定自定义 Nmap 数据文件位置
--send-eth/--send-ip:      使用原始以太网帧或 IP 数据包发送
--privileged:              假定用户具有特权
--unprivileged:            假设用户缺少原始套接字权限
-V:                        版本号
-h:                        帮助

EXAMPLES:

例子:

nmap -v -A scanme.nmap.org
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -Pn -p 80

SEE THE MAN PAGE (https://nmap.org/book/man.html) FOR MORE OPTIONS AND EXAMPLES


nmap
https://shenysec.github.io/2023/05/01/nmap/
作者
sheny
发布于
2023年5月1日
更新于
2023年5月6日
许可协议