Nmap工具总结

  • 基本功能
    • 探测主机是否在线
    • 扫描主机端口,嗅探对应的网络服务是否能用
    • 推断出主机所用的操作系统
  • 端口扫描
    • 协议划分
      • TCP端口
      • UDP端口
    • 所有者划分
      • 系统端口(不可变) 0~1000
      • 用户端口 (可变) 1001~65535
  • nmap参数
    • -sP
      • 以ping命令的方式扫描主机(ICMP协议)
    • -sS(默认有root权限)
      • 用于确定端口是否开放
      • 发送SYN请求方式,收到SYN/ACK包则端口开启,收到RST则说明端口关闭,没收到数据则表示端口被屏蔽
      • 相率高,隐蔽性好
    • -sT
      • 通过向端口发送TCP连接判断端口是否开放
      • 需要建立完整的TCP连接,效率慢,隐蔽性差(会留下记录)
    • -sA
      • 用于确定端口是否屏蔽,搭配-sS使用
      • 通过发送ACK包到端口,若收到RST包则说明端口未被屏蔽,没收到则被屏蔽了
    • -sN/sF/sX
      • 分别对应FIN/Xmas/NULL标志
        • FIN包即FIN标志位置1
        • Xmas包即FIN,URG,PUSH标志位全置1
        • NULL包即所有标志位为0
      • 收到RST包说明端口关闭,反之则说明端口不关闭(开放/屏蔽)
      • 秘密扫描,非常隐蔽
    • -sU
      • UDP端口扫描
      • 收到ICMP回复则说明端口是关闭的,反之则说明端口不关闭(开放/屏蔽的)
    • -sY/sZ
      • 通过SCTP协议扫描SCTP协议端口/使用idle scan方式借助僵尸主机扫描目标主机的方式
  • nmap使用
    • 扫描一个ip
      • nmap 192.168.132.111
    • 扫描多个ip
      • nmap 192.168.1.1 192.168.2.1
    • 扫描一个范围
      • nmap 192.168.1-255
    • 扫描域名
      • nmap www.baidu.com
    • 扫描整个网段
      • nmap 192.168.1.0/24
    • 扫描文件中的目标
      • nmap -iL target.txt
    • 扫描100个随机主机
      • nmap -iR 100
    • 排除列出的主机
      • nmap --exclude 192.168.1.1
    • -sS/sT/sU/sA不在赘述
    • 滑动窗口扫描
      • nmap 192.168.1.1 -sW
    • TCP Maimon扫描
      • nmap 192.168.1.1 -sM
    • 不扫描,只列出目标
      • nmap 192.168.1.1-3 -sL
    • 只进行主机发现,禁用端口扫描
      • nmap 192.168.1.0/24 -sn
    • 跳过主机发现,直接扫描端口
      • nmap 192.168.1.1-5 -Pn
    • 指定端口上的不同协议发现
      • TCP SYN发现(默认是80端口)
        • -PS22-25,80
      • TCP ACK(默认80)
        • -PA22-25,80
      • UDP(默认40125)
        • -PU53
      • ARP
        • -PR
    • 不做dns解析
      • -n
    • 指定特定端口
      • -p 21 //一个端口
      • -p 21-25 //多个端口
      • -p - //所有端口
    • 基于服务名称的端口扫描
      • -p http,https
    • 快速扫描
      • -F
    • 扫描前2000个端口
      • namp 192.168.1.1 --top-ports 2000
    • 从端口1进行扫描
      • nmap 192.168.1.1 -p-65535
    • 时间和性能
      • -T0
        • 很慢很慢,用于IDS逃逸
      • -T1
        • 非常慢,用于IDS逃逸
      • -T2
        • 降低速度消耗更小的带宽,比默认慢十倍
      • -T3
        • 默认的,正常的
      • -T4
        • 野蛮的,请求可能会淹没目标
      • -T5
        • 疯狂的,可能会淹没目标或漏掉一些开放端口
    • NSE脚本扫描
      • -sC
        • 默认NSE脚本扫描
      • --script=banner,http
        • 使用banner脚本和http脚本扫描
      • --script=http*
        • 通配符扫描
      • --script “not intrusive”
        • 扫描默认值,删除侵入性脚本
      • --script=smb-vuln*
        • 扫描所有smb漏洞
      • --script=vuln
        • 扫描常见漏洞
    • 输出
      • -vv
        • 详细展示过程
      • -oN test.txt
        • 标准输出到指定文件中
      • -oX test.xml
        • 将输入写成xml格式
      • -oG grep.txt
        • 以特殊格式输出
      • -oA results
        • 输出所有格式
        • .xml/.gnmap/.nmap
      • --open
        • 仅显示开放的端口
      • --packet-trace
        • 显示所有发送和接收的数据包
      • --resume test.txt
        • 恢复扫描
    • 端口状态
      • open
        • 端口开放
      • closed
        • 端口关闭
      • filtered
        • 端口屏蔽
      • unfiltered
        • 端口没有被屏蔽
      • open|filtered
        • 端口开放的或被屏蔽的
      • closed|filtered
        • 端口关闭的或被屏蔽的

你可能感兴趣的:(网络)