-sT TCP connect()扫描|(三次握手方式tcp的扫描)
-sS TCP 同步扫描(TCP SYN)|(半开放扫描)
-sF 秘密FIN数据包扫描
-sX 圣诞树扫描
-sN 空(Null)扫描模式
-sP Ping扫描
-P0 无Ping扫描
-sU UDP扫描
-sA ACK扫描
-sW 滑动窗口扫描(Windows扫描)
-sR RPC扫描
-A 综合性扫描(激烈扫描)
-sV 系统服务及服务版本号扫描
-sn Ping探测扫描主机,不进行端口扫描
-sO 探测对方,TCP/IP协议簇中有哪些协议,类型号分别是多少
-sL 列表扫描
-sl 空闲扫描
-sC 根据端口识别的服务,调用默认脚本
-b FTP反弹攻击
-PS 使用SYN包进行扫描,如果主机正在允许就返回一个RST包(或者一个SYN/ACK包)
-PI 使用真正的Ping扫描(ICMP echo请求)
-PB 使用ACK(-PT)和ICMP(-PI)两种扫描类型并行扫描
-PR ARP Ping扫描
-PU UDP Ping扫描
-PE、-PP、-PM 使用ICMP echo, timestamp and netmask请求包发现主机
-O TCP/IP指纹特征扫描(操作系统扫描)
-I 打开nmap的反向标志扫描功能
-f 使用碎片IP数据包发送SYN、FIN、XMAS、NULL
-v 冗余模式。显示扫描过程中的详细信息。使用-d可以得到更加详细的信息。
-oN 把扫描结果重定向到一个可读的文件logfilename中。
-oM 把扫描结果重定向到一个可读的文件logfilename中。这个文件使用主机可以解析的语法
-oX XML保存
-oS 133t保存
-oG Grep保存
-oA 保存到所有格式
--append-output 补充保存文件
-iL 从文件中读取扫描的目标
-iR 让nmap自己随机挑选主机进行扫描 例如:nmap -iR 2 -Pn -p22
-p 指定端口
-F 快速扫描模式
-D 使用诱饵扫描方法对目标网络/主机进行扫描
-e 指定哪个接口发送和接收数据包(指定网口与IP地址)例如:nmap -e eth0 targetip
-g 设置扫描的源端口
-n 不用域名解析
-R 为所有目标解析域名
-S 伪装源地址进行扫描。
-r 告诉nmap不要打乱被扫描端口的顺序
-M 设置进行TCP connect()扫描时,最多使用多少个套接字进行并行扫描
--iflist 查看本地路由于接口
--host_timeout 设置扫描一台主机的时间,以毫秒为单位。默认情况下没有超时限制
--max_rtt_timeout 设置对每次探测的等待时间,以毫秒为单位。如果超过这个时间限制就重传或者超时。默认值大约是9000毫秒
--min_rtt_timeout 设置探测时间至少为你指定的时间,以毫秒为单位
--initial_rtt_timeout 设置初始探测的超时值。一般这个选项只在使用-P0选项扫描有防火墙保护的主机才有用。默认值是6000毫秒
--max_parallelism 设置最大的并行扫描数量。--max_parallelism 1 表示同时只扫描一个端口。这个选项对其他的并行扫描也有效,例如ping sweep RPC scan
--scan_delay 设置在两次探测之间,nmap必须等待的时间。这个选项主要用于降低网络的负载
--top-ports
--allports 不为版本探测排除任何端口
--system-dns 使用系统域名解析器
--traceroute 跟踪到每个主机的跳路径
服务版本识别
--version-intensity 设置版本扫描强度,强度水平说明了应该使用哪些探测报文。数值越高,服务越有可能被正确识别。默认是7
--version-all 尝试所有探测,为—version-intensity 9的别名
--version-light 打开轻量级模式,为—version-intensity 2的别名
--version-trace 显示出详细的版本探测过程信息
脚本扫描
--script=
--script-args=
--script-args-file=filename 使用文本传递参数
--script-trace 显示所有发送和接收到的数据
--script-updatedb 更新脚本的数据库
--script-help=
OS识别
--osscan-limit 针对指定的目标进行操作系统检测(至少需确知该主机分别有一个open和closed的端口)
--osscan-guess 推测操作系统检测结果,当Nmap无法确定所检测的操作系统时,会尽可能地提供最相近地