信息收集 | 主动扫描 | Nmap

1.基本用法

  扫描单个主机:             nmap 192.168.0.108
  扫描多个不连续主机:        nmap 192.168.0.107 192.168.0.108      空格分隔
  扫描连续主机:             nmap 192.168.0.1-255 -sn
  扫描整个子网:             nmap 192.168.0.1/24 -sn
  -sn参数:                 只扫描是否在线,比较节约时间

2.主机发现

  • 使用Ping协议
    仅使用Ping扫描主机: nmap -sP 192.168.0.107
    如果某主机采用某种手段屏蔽了Ping扫描,我们可以使用-PN指定无论是否响应Ping扫描,都要将整个扫描过程完成(跳过Ping扫描阶段) nmap -PN 192.168.0.107

  • 使用ARP协议
    当目标主机与我们处于同一网段时,使用ARP协议扫描是最佳的选择,这种方式也仅能用于与nmap主机处在同一子网中 nmap -PR 192.168.0.107

  • 使用TCP协议
    TCP协议有三次握手,所以使用TCP协议进行扫描分为:
    全开扫描(Connect扫描):完成三次握手nmap -sT 192.168.0.107
    半开扫描(SYN扫描):只完成前两步nmap -sS 192.168.0.107

    **半开扫描更常用,因为其耗时更短,且不容易被目标的日志所记录**
    
  • 使用UDP协议
    不如TCP方便,且花费时间更长
    nmap -sU 192.168.0.107

3.端口发现

  Nmap默认扫描的端口只有1000个,所以如果我们不加任何参数的话,Nmap扫描的只有1000个端口,而不是65535个
  1. 扫描全部端口
  nmap -p "*" 192.168.0.107
  2. 扫描前n个端口
  nmap --top-ports 10 192.168.0.107
  3. 扫描指定端口
  nmap -p 80 192.168.0.107

4.扫描目标操作系统

  原理:通过向目标发送探针,然后根据目标的回应来猜测系统。
  这个探针大都是以TCP和UDP数据包的形式,检查的细节包括初始序列号,TCO选项,IP标识符,数字时间戳,显示拥塞通知,窗口大小等。每个操作系统对于这些探针会做出不同的相应。
  nmap -O 192.168.0.107

5.扫描目标服务

  扫描目标上的服务和软件
  nmap -sV 192.168.0.107

6.扫描结果保存为XML

  nmap -oX Report.xml 192.168.0.107
原文地址:https://www.cnblogs.com/leerep/p/13628417.html