【笔记】Nmap学习笔记

前言

Nmap(网络映射器)是一款用于网络发现和安全审计的网络安全工具,它是自由软件。软件名字Nmap是Network Mapper的简称。(维基百科

普通扫描如果是普通用户,使用TCP方式扫描,扫描速度快,不安全
普通扫描如果是ROOT用户,使用SYN方式扫描,扫描速度慢,安全

主机发现

  • 存活探测

-sP(旧版)、-sn(新版):只包括IP地址扫描,不扫描端口

扫描单个IP

1
nmap -sn 192.168.1.1

扫描多个IP

1
nmap -sn 192.168.1.1-2
1
nmap -sn 192.168.1.1-192.168.1.2

扫描所有IP地址

  • 扫描整个网段
1
nmap -sn 192.168.1.1-255
1
nmap -sn 192.168.1.1-192.168.1.255
1
nmap -sn 192.168.1.0/24

扫描端口

-p:主机探测并进行扫描端口
-Pn:不进行主机探测,直接进行扫描端口

扫描单个端口

1
nmap -p <port> 192.168.1.1
端口状态 备注
open 端口打开
close 端口关闭
filter 端口被过滤,数据不能到达主机
unfilter 端口未被过滤,数据能到主机,但是不能识别端口

扫描多个端口

不连续的多个端口

1
nmap -p <port_1>,<port_2> 192.168.1.1

连续的多个端口

1
nmap -p <port_start>-<port_end> 192.168.1.1

混合配置

1
nmap -p <port_1>,<port_start>-<port_end> 192.168.1.1

扫描所有端口

  • 全端口扫描
1
nmap -p 0-65535 192.168.1.1
1
nmap -p- 192.168.1.1

扫描OSI第7层服务

  • 扫描OSI第7层服务时,也会同时扫描第4层服务

-sV:扫描1000个常见端口的服务及版本
-p <port>:扫描指定端口的服务及版本

1
nmap -sV 192.168.1.1

扫描OSI第4层服务

扫描TCP服务

全连接扫描

  • 扫描时进行完整的TCP三次握手,以确保TCP服务正常
1
nmap -sT 192.168.1.1

SYN半开扫描

  • 必须root身份
  • 扫描时不进行完整的TCP三次握手,只进行前第二次
1
nmap -sS 192.168.1.1

Null空标志扫描

  • 必须root身份
  • 发送的数据包标识位全为0
  • 不适用用于Windows
1
nmap -sN 192.168.1.1

扫描UDP服务

1
nmap -sU 192.168.1.1

默认扫描

  • 普通用户默认使用-sS参数扫描,root用户默认使用-sT参数扫描
  • 扫描IP地址及扫描1000个常见端口号
1
nmap 192.168.1.1

系统扫描

  • 必须root用户
  • 扫描IP地址及开放端口号,不扫描端口号服务
1
nmap -O 192.168.1.1

全能扫描(Aggressive)

  • -O=>-sV=>-sC=>--traceroute
1
nmap -A 192.168.1.1

指定扫描时序

-T0:偏执的,非常慢,用于IDS逃避
-T1:鬼祟的,比较慢,用于IDS逃避
-T2:文雅的,有点慢,用于降低网络带宽
-T3:普通的,缺省值,根据目标反应自动调整时间
-T4:野蛮的,比较快,需要在网络好的环境下进行,请求可能会淹没目标
-T5:疯狂的,非常快,牺牲准确度来提升速度

1
nmap -T0 192.168.1.1

默认漏洞库扫描

  • 必须root用户
  • 使用自带的.nse脚本扫描漏洞
1
nmap -sC 192.168.1.1

扫描结果输出为文件

txt

<file>:生成的文件路径

1
nmap -oN <file>.txt 192.168.1.1

xml

1
nmap -oX <file>.xml 192.168.1.1

完成

参考文献

哔哩哔哩——窝草丶五弦都能断
哔哩哔哩——腾讯掌控安全学院
微信公众号——Web安全工具库
微信公众号——暗网黑客
哔哩哔哩——千锋教育网络安全学院