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 已弃用
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/