nmap常用命令

看了一遍nmap的手册,简单整理了下常用的选项

nmap [<扫描类型>...] [<选项>] {<扫描目标说明>}


指定目标相关

CIDR 风格
带上 /number 就可以扫子网,比如 192.168.1.0/24

逗号分割
www.baidu.comwww.zhihu.com

分割线
10.22-25.43.32
//分割线可以出现在任何一个地方

来自文件
-iL <inputfile>

随机
-iR <hostnum>
为0时意为不停止

排除不需要的host
--exclude <host1 [, host2] [, host3] ... >
--excludefile <excludefile>


主机发现

-sL list scan

-sP ping 扫描

-P0 无ping
-PS [port list] (TCP SYN ping) // need root on Unix
-PA [port list] (TCP ACK ping)
-PU [port list] (UDP ping)
-PR (Arp ping)

-PE -PP -PM (ICMP ping)

-n 不用域名解析
-R 为所有目标解析
--system_dns 使用系统的dns来解析


端口扫描

-sS TCP SYN
-sT TCP connect
-sU UDP
-sN TCP Null 不设标志位
-sF FIN
-sX Xmas 设置FIN PSH URG
-sA TCP ACK
-sW TCP 窗口扫描
-sM TCPMaimon扫描
--scanflags 定制的TCP扫描
-sI <zombiehost[:probeport]> (Idlescan)
-sO IP协议
-b <ftp relay host> ftp 弹跳扫描

端口说明和扫描位置

-p <port message>
-F 快速扫描
-r 不使用随机顺序扫描


服务和版本探测

-sV 版本探测
--allports 不为版本探测排除任何端口
--version-intensity <intensity> 设置 版本扫描强度
--version-light 打开轻量级模式 // 级别2
--version-all 尝试每个探测 // 级别9
--version-trace 跟踪版本扫描活动
-sR RPC 扫描


操作系统扫描

-O 启用操作系统检测
// 也可以使用-A来同时启用操作系统检测和版本检测。
--osscan-limit 针对指定的目标进行操作系统检测
--osscan-guess
--fuzzy 推测操作系统检测结果


时间和性能

调整并行扫描组的大小
--min-hostgroup<milliseconds>
--max-hostgroup<milliseconds>

调整探测报文的并行度
--min-parallelism<milliseconds>
--max-parallelism<milliseconds>

调整探测报文超时
--min_rtt_timeout <milliseconds>
--max-rtt-timeout <milliseconds>
--initial-rtt-timeout <milliseconds>

放弃低速目标主机
--host-timeout<milliseconds>

调整探测报文的时间间隔
--scan-delay<milliseconds>
--max_scan-delay<milliseconds>

设置时间模板
-T <Paranoid|Sneaky|Polite|Normal|Aggressive|Insane>

// -T0/1 可以减少 IDS报警,但是显著变慢


逃避检测相关

-f 报文分段
--mtu 使用指定的MTU
-D<decoy1[, decoy2][, ME], ...> 使用诱饵隐蔽扫描
-S<IP_Address> 源地址哄骗
-e <interface> 使用指定的接口
--source-port<portnumber>;-g<portnumber> 源端口哄骗
--data-length<number> 发送报文时 附加随机数据
--ttl <value> 设置ttl
--randomize-hosts 对目标主机的顺序随机排列
--spoof-mac<macaddress, prefix, orvendorname> MAC地址哄骗


输出

-oN<filespec> 标准输出
-oX<filespec> XML输出
-oS<filespec> ScRipTKIdd|3oUTpuT
-oG<filespec> Grep输出
-oA<basename> 输出至所有格式

细节和调试

-v 信息详细程度
-d [level] debug level
--packet-trace 跟踪发送和接收的报文
--iflist 列举接口和路由

其他

--append-output 在输出文件中添加
--resume<filename> 继续中断的扫描
--stylesheet<pathorURL> 设置XSL样式表,转换XML输出
--no_stylesheet 忽略XML声明的XSL样式表

-6 ipv6
-A 激烈模式
--datadir<directoryname> 说明用户Nmap数据文件位置
--send-eth 使用原以太网帧发送
--send-ip 在原IP层发送
--privileged 假定用户具有全部权限
--interactive 在交互模式中启动
-v --version 版本
-h --help 帮组


nmap 识别端口的6个状态

open : 应用程序正在接受来自该端口的访问
closed : 可访问,但是没有程序在监听
filtered : 包被阻止了,不知道是什么情况
unfiltered : 端口可访问,但是不确定是否开放
open|filtered : 特殊状态,不确定
colsed:filterd : 特殊状态,不确定

推荐阅读更多精彩内容

  • nmap使用指南(终极版) 原创2017-09-09hl0rey信安之路 一、目标指定 1.CIDR标志位 192...
    用电热毯烤猪阅读 11,057评论 1 49
  • Nmap扫描原理与用法 1Nmap介绍 Nmap扫描原理与用法PDF:下载地址 Nmap是一款开源免费的网络发现(...
    y0ungta1a阅读 4,726评论 0 50
  • 命令很多,试试Ctrl+f,查找吧---------Nmap详细的命令解释 我只是简化了这些命令,如果不懂得的话,...
    Grizzly_Bear阅读 2,423评论 0 1
  • 中国的酒文化源远流长,也许你滴酒不沾,也许你无酒不欢,不过作为中国人避免不了或多或少接触酒场,今天让我们对白酒做一...
    super康阅读 252评论 0 1
  • 当诗歌成为了粪便 当粪便成为你的诗歌 你是否依然 依然相信我的执着 我只是刹那的烟火 只不过温暖你的不是我 若是雪...
    阿托的木偶阅读 102评论 0 0
  • Swift注释 //MARK: 对方法注释 //TODO: 有待完成的代码 //FIXME: 代码修改过
    不愿透漏姓名的s阅读 187评论 0 1