扫描阶段Nmap工具的常见使用方法
文章目录
前言
渗透测试生命周期:侦察,扫描,渗透,维持访问,报告
一、Nmap命令结构
nmap -sS -T2 10.0.0.2 -oN
nmap:命令
-sS:扫描选项
-T2:计时选项
10.0.0.2: 扫描目标
-oN:输出选项
nmap 10.0.0.2
默认情况下,如果不设置额外选项,Nmap会对10.0.0.2进行一次隐蔽扫描,使用正常的时间模版T3,并将结果输出到屏幕上
二、命令结构简解
1. 扫描选项
-sS, -sT, -sU, -sA
-sS隐蔽扫描,即SYN。不会完成三次握手
Nmap -sS 10.0.0.1
-sT: TCP连接扫描,建立三次握手,会获取到更多信息
-sU: UDP扫描
nmap -sT 10.0.0.1
nmap -sU 10.0.0.1
-sA: ACK扫描:可以用于确定TCP端口是否被过滤
2. timing模版
如果没有指定,则默认为-T3或normal
timing模版的三个参数:scan_delay, max_scan_delay, max_parallelism
scan_delay:为2次探测之间的最小时间差
max_scan_delay:根据目标和网络,调整允许的扫描延时的最大值
max_parallelism:告诉扫描器时串行扫描还是并行扫描
-T0 Paranoid
Paranoid模版用于慢速攻击,或者必须最小化被发现的风险的环境
为串行扫描,scan_delay = 5 min
-T1 Sneaky
与T1一样,为慢速扫描和串行扫描,scan_delay = 15s
-T2 Polite
串行扫描,scan_delay = 400ms, max_scan_delay=1s
-T3 Normal
默认扫描方式,并行扫描,scan_delay = 0s, max_scan_delay = 1s
-T4 Aggressive
并行扫描, scan_delay = 0s, max_scan_delay = 10ms
-T5 Insane
最快的内置模版,并行扫描, scan_delay = 0s, max_scan_delay = 5ms
3. 扫描目标
IP地址段:如
nmap 10.0.2.1-255 或者 nmap 10.0.2.1/24
nmap 10.0.2.1-100 或者 nmap 10.0.2.0/25
扫描列表:可以将要扫描的多个IP地址保存在一个文本文件中
nmap -iL targets.txt
4. 选择端口
如:nmap -sS -p 1-100
nmap -sU -p 53,137,138,161,162
5. 输出选项
-oN:普通输出,即文本文件
nmap -oN scan.txt 10.0.0.1
-oX:XML输出
nmap -oX scan.xml 10.0.0.1
-oG:GREPable输出
nmap -oG scan.txt 10.0.0.1
6. 扫描脚本
Nmap自带了.nse的扫描脚本,功能强大
如: nmap --script nbstat.nse 10.0.0.1
nmap脚本存放在 /usr/share/nmap/scripts
在执行任务之前,可以先更新一下数据库
nmap --script-updatedb