nmap
全称为“Network Mapper”,中文为网络映射器,是一款开放源代码的网络探测和审核的工具,他的设计目标的是快速的扫描大型网络
工作原理
nmap使用TCP/IP协议栈指纹准确的判断目标主机的操作系统类型
工作原理如下
nmap的 TCP/IP 协议栈指纹
T1 发送TCP数据包(Flag=SYN)到开放的TCP端口
T2 发送一个空的TCP数据包到开放的TCP端口
T3 发送TCP数据包(Flag=SYN,URG,PSH,FIN)到开放的TCP端口
T4 发送TCP数据包(Flag=ACK)到开放的TCP端口
T5 发送TCP数据包(Flag=SYN)到关闭的TCP端口
T6 发送TCP数据包(Flag=ACK)到开放的TCP端口
T7 发送TCP数据包(Flag=URG,PSH,FIN)到关闭的TCP端口
nmap对主机进行一系列的测试,利用测试结果建立相应目标主机的nmap指纹,然后会对指纹进行匹配,最终输出相应的结果
基本功能
1.探测一组主机是否在线
2.扫描主机端口
3.嗅探所提供的网络服务
基本命令
-A
全面扫描/综合扫描
1.主机发现
-sP
ping 扫描
ping扫描的优点是不会返回太多的信息造成对结果的分析,比较高效,不会轻易被发现
-p0
无ping扫描
判断主机是否存活可使用–packet-trace选项
-PS
TCP SYN ping扫描
-PA
TCP ACK ping扫描
-PU
UDP ping扫描
-PE;-PP;-PM
ICMP ping Yypes扫描
-PR
ARP ping扫描
-n
禁止DNS反向解析
-R
反向解析域名
-sL
列表扫描
-6
扫描ipv6地址
–traceroute
路由跟踪
-PY
SCTP INIT ping扫描
2.端口扫描
-T
时序选项
-p
扫描的端口
-sS
TCP SYN链接
-sT
tcp 链接扫描
-sU
UDP扫描
-sN;-sF;-sX
隐蔽扫扫描
-sA
TCP ACK 扫描
-sW
TCP窗口扫描
-sM
TCP maimon扫描
–scanflags
自定义TCP扫描
-sI
空闲扫描
-sO
IP协议扫描
-b
FTP Bounce扫描
3.版本探测
-sV
版本探测
-O
操作系统探测
–version-trace
获取详细版本信息
–allports
全端口版本探测