1.概述
博主前段时间刚入坑渗透测试,随着学习的深入,越来越发现Nmap简直无所不能。今天先从主机发现功能入手分析。
2.Nmap主机发现
nmap --help #nmap帮助
3.参数分析
3.1 -sL #列表扫描--简单地列出要扫描的目标
nmap -sL 192.168.100.0/24
通过抓包(工具为科来抓包工具)分析,只是进行通过DNS解析地址。100.103是本机地址。
3.2 -sn #ping扫描--不对端口扫描
nmap -sn 192.168.100.0/24
通过抓包分析,是本机地址向网段内发广播包,如果有ARP回应,就是存活主机。
3.3 -Pn #将所有主机视为在线--跳过主机发现
nmap -Pn 192.168.100.0/24
通过抓包分析,是本机地址通过ARP请求确认存活主机后,再使用TCP协议判断端口号。
3.4 -PS/PA/PU/PY #通过SYN/ACK/UDP/SCTP探测确认端口号
nmap -PS 192.168.100.0/24 nmap -PA 192.168.100.0/24 nmap -PU 192.168.100.0/24 nmap -PY 192.168.100.0/24
通过抓包分析,本机地址通过发TCP连接,将SYN置1,如果收到ACK+RST,则判定主机存活,并进一步探测端口。
ACK/UDP/SCTP探测原理相同。
3.5 -PO #使用IP协议ping
nmap -PO 192.168.100.0/24
通过抓包分析,探测过程与3.4一致。
4.总结
总体来看,nmap在主机发现的过程中,基本上都是先发ARP广播包,确认哪些主机存货,再通过参数控制输出的选项。