Nmap备忘单第一章从探索到漏洞利用
在侦查阶段,信息收集的首要步骤通常是网络扫描。目标网络中隐藏着哪些资产?哪些端口处于开放状态?运行着何种服务?一旦掌握了这些关键信息,后续的攻击路径便会变得清晰明朗。 侦查是什么? 侦查,本质上就是尽可能全面地搜集目标网络的各种信息。从攻击者的视角来看,信息收集越充分,后续操作就越得心应手。通常需要
在侦查阶段,信息收集的首要步骤通常是网络扫描。目标网络中隐藏着哪些资产?哪些端口处于开放状态?运行着何种服务?一旦掌握了这些关键信息,后续的攻击路径便会变得清晰明朗。
侦查是什么?
侦查,本质上就是尽可能全面地搜集目标网络的各种信息。从攻击者的视角来看,信息收集越充分,后续操作就越得心应手。通常需要收集的信息包括:电子邮件地址、开放端口、操作系统类型、运行的服务、Traceroute路径或DNS记录,以及防火墙的识别和绕过方法等。
NMAP的简介
Nmap是一款网络连接端口扫描工具,用于扫描网络中计算机的开放端口,判断哪些服务运行在哪些端口上,还能推断出目标计算机的操作系统(这一过程也称为指纹识别)。它几乎是每位网络管理员必备的实用工具,也是评估网络安全的重要武器。
NMAP脚本引擎
NMAP脚本引擎(NSE)是Nmap最强大、最灵活的特性之一。它允许用户编写简单的脚本来自动化执行各种网络任务,这些脚本通常采用Lua语言编写。NSE能做的事情非常广泛,例如:
网络发现
这是Nmap的基础功能。具体例子包括:查找目标域名的WHOIS信息,向ARIN、RIPE或APNIC查询目标IP的归属,发现开放端口,执行SNMP查询,以及列出可用的NFS/SMB/RPC共享和服务。
漏洞检测
当新的漏洞被发现时,你一定希望赶在攻击者之前快速扫描网络,找出存在漏洞的系统。虽然Nmap并非全面的漏洞扫描器,但NSE足够强大,能够应对许多苛刻的漏洞检查。目前已有大量可用的漏洞检测脚本,并且数量还在持续增长。
后门检测
很多攻击者和自动化蠕虫会在系统中留下后门,以便日后再次入侵。其中一些后门可以通过Nmap的正则表达式检测出来。
漏洞利用
作为一种脚本语言,NSE甚至可以直接进行漏洞利用,而不仅仅是发现它们。添加自定义攻击脚本的功能对渗透测试人员来说极具价值,不过Nmap的设计初衷并非取代Metasploit框架这类专业工具。
可以看到,这里使用了(-sc)选项(或-script),它会执行默认脚本集来扫描网络。从结果中能观察到ssh、rpcbind、netbios-sn等服务,但端口状态显示为过滤或关闭,因此很可能存在防火墙在阻挡请求。稍后将专门讨论如何识别防火墙以及如何尝试绕过。

接下来尝试发现模式,运行ping扫描(-sP --script discovery),它会尝试所有可能的发现方法,从而获取更多有趣的信息。

从图像中可以看到,Nmap正根据脚本规则尝试所有可能的发现方式。更多细节请参见下图。

能发现哪些有趣的端口和协议呢?DNS爆破脚本(dns-bruteforce)发现了一些主机,包括blog、cms、sql、log、mail等二级域名。这些地方可以进行SQL注入尝试,blog可能是WordPress或Joomla,因此可以利用公开的CMS漏洞。
后续将介绍如何编写自己的Nmap脚本,并通过Nmap调用。
基本扫描技术
下面展示扫描网络或主机的常用技巧。不过在此之前,需要了解Nmap扫描后端口状态的一些基本概念。
端口状态:扫描后,你可能会看到几种结果——端口状态为过滤、打开、关闭等。解释如下:
开放:表示有应用程序正在侦听此端口上的连接。
关闭:表示收到了探针,但没有应用程序在侦听此端口。
已过滤:表示探针未收到,无法建立连接。也意味着探针被某些过滤规则丢弃了。
未过滤:表示探针已收到,但无法建立连接。
打开/过滤:表示端口可能被过滤也可能打开,但Nmap无法确定。
关闭/过滤:表示端口可能被过滤也可能关闭,但Nmap无法确定。
扫描单个网络
执行 NMAP 192.168.1.1 或者 NMAP www.baidu.com 这样的主机名即可。

扫描多个网络/目标
执行 NMAP 192.168.1.1 192.168.1.2 等,Nmap会扫描同一网段内的不同IP地址。

也可以在同一条命令中扫描多个网站或域名,见下图。Nmap会将域名转换为对应的IP地址进行扫描。

扫描连续的IP地址
命令:NMAP 192.168.2.1-192.168.2.100
Nmap也能用CIDR(无类别域间路由)表示法扫描整个子网,例如:NMAP 192.168.2.1/24
扫描目标列表
假如有大量系统需要扫描,可以将IP地址(或主机名)写入文本文件,然后用该文件作为输入:NMAP -iL [LIST.TXT]
扫描随机目标
-iR 参数用于随机选择Internet主机进行扫描,Nmap会随机生成指定数量的目标并尝试扫描。
语法:
NMAP -iR [主机数]--exclude 选项用于从扫描中排除某些主机,例如:
NMAP 192.168.2.1/24 --exclude 192.168.2.10
侵入性扫描
最常用的选项之一,用单个字母A替代长字符串,同时会执行路由跟踪等操作:NMAP -A 主机
使用NMAP探索
用Nmap进行探索既有趣味性,又对渗透测试大有裨益。在发现过程中,可以了解服务、端口号、防火墙的存在、协议、操作系统等信息。下面逐一展开讨论。
不进行Ping
-PN 选项指示Nmap跳过默认的发现检查,直接对目标执行完整的端口扫描。当扫描被防火墙保护(且防火墙阻止ping探测)的主机时,这个选项非常实用。
语法:NMAP -PN 目标

仅进行Ping扫描
-sP 选项让Nmap仅对主机进行ping。当需要探测一批IP地址中哪些可达时,非常有用。如果指定了特定目标,还能获得更多信息(比如MAC地址)。
命令:NMAP -sP 目标
TCP SYN扫描
在开始之前,先了解SYN数据包的含义。简单来说,SYN包用于启动两个主机之间的连接。
TCP SYN ping会发送一个SYN包到目标系统,并监听响应。这种探测方法对配置为阻止标准ICMP ping消息的主机尤其有效。
-PS 选项执行TCP SYN Ping:NMAP -PS 主机

TCP Ack Ping扫描
这种扫描只发送确认(ACK)数据包。选项 -PA 对指定主机进行TCP Ack Ping扫描:NMAP -PA 目标

UDP Ping 扫描
选项 -PU 对指定主机进行UDP Ping扫描:NMAP -PU 目标

SCTP初始化Ping
选项 -PY 指示Nmap执行一个SCTP INIT Ping。该选项会发送一个包含最小INIT块的SCTP包。这种探测方法用于寻找使用流控制传输协议(SCTP)的主机,SCTP通常用于基于IP的电话系统。
命令:NMAP -PY 目标

ICMP Echo ping
选项 -PE 对指定主机执行ICMP(互联网控制消息协议)回显Ping:NMAP -PE 目标

ICMP 时间戳 ping
选项 -PP 执行一次ICMP时间戳ping:NMAP -PP 目标

ICMP 地址掩码 ping
选项 -PM 进行ICMP地址掩码ping:NMAP -PM 目标

IP 协议 Ping
选项 -PO 执行IP协议Ping扫描:NMAP -PO protocol 目标

IP协议ping会发送带有指定协议的目标数据包。如果没有指定协议,默认使用协议1(ICMP)、2(IGMP)和4(IP-in-IP)。
ARP Ping
选项 -PR 用于执行ARP ping扫描:NMAP -PR 目标

扫描本地网络时,-PR 选项会自动暗中启用。这种类型的发现比其他ping方法快得多。
路由跟踪
选项 --traceroute 可用于跟踪到指定主机的网络路径:NMAP --traceroute 目标

强制反向DNS解析
选项 -R 指示Nmap始终对目标IP地址执行反向DNS解析:NMAP -R 目标

在对一个IP段进行侦查时,-R 选项非常有用,Nmap会尝试查询每个IP地址的反向DNS信息。
禁用反向DNS解析
选项 -n 用于禁用反向DNS解析:NMAP -n 目标

反向DNS解析会明显减慢Nmap扫描速度。使用 -n 选项能大大降低扫描耗时,尤其在扫描大量主机时。如果不需要目标系统的DNS信息,并且希望获得更快的扫描结果,这个选项非常实用。
选择DNS查找方法
选项 --system-dns 指示Nmap使用主机系统自带的DNS解析器,而不是其内部的方法:NMAP --system-dns 目标

手动指定DNS服务器
选项 --dns-servers 用于扫描时手动指定DNS服务器进行查询:NMAP --dns-servers server1 server2 目标

--dns-servers 允许为Nmap的查询指定一个或多个备用服务器。这对于没有配置DNS的环境,或者希望防止扫描记录出现在本地DNS服务器日志中的情况,十分有用。
清单扫描
选项 -sL 会显示一个列表,并对指定的IP地址执行反向DNS查找:NMAP -sL 目标

后续的文章将继续讨论如何使用不同方法发现服务、主机和banner,还会介绍如何在Nmap中使用NSE来识别和绕过防火墙,以及如何编写自己的Nmap脚本。Nmap最重要的部分,是掌握如何查找漏洞并尝试利用它们。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
DDoS攻击的三大主要形式:原理、特征与防御重点
DDoS攻击主要分为基于流量(Volume)、基于应用层(Application)和基于协议(Protocol)三种形式。流量型攻击通过海量数据淹没带宽;应用层攻击利用Web漏洞耗尽服务器资源;协议层攻击则利用TCP握手缺陷导致系统挂起。了解这些原理是制定针对性防御策略的基础。
如何有效预防和缓解DDoS攻击:5大核心策略详解
面对DDoS攻击,单纯增加带宽已非长久之计。本文详解5大核心防护策略:优化网络硬件配置、建立DNS冗余机制、部署透明缓解技术、引入负载平衡器及专用Anti-DDoS模块。通过合理组合这些技术手段,可有效抵御SYN泛洪、Slowloris等常见攻击,保障业务连续性与网站可用性。
DDoS防护四大误区:CDN、防火墙与黑名单的局限性解析
许多企业误以为CDN、防火墙或黑名单能完全抵御DDoS攻击。本文深入解析四大常见误区:CDN仅提供部分缓解、静态黑名单易失效、防火墙算力有限且可能成为目标、阈值警报仅具滞后性。了解这些局限性,有助于构建更立体的防御体系,避免在攻击发生时措手不及。
常见DDoS攻击类型详解:原理、特征与防御策略
本文详细解析四种常见DDoS攻击类型:SYN Flood利用TCP三次握手缺陷耗尽资源;UDP Flood通过海量数据包造成带宽拥塞;ICMP Flood利用Ping请求消耗系统算力;应用层Flood针对Web脚本进行高频请求。了解其原理是制定有效防御策略的基础。
如何有效抵御DDOS攻击:4种核心防护方案解析
面对DDOS攻击,企业需构建多层防护体系。本文详解四大核心策略:利用反向路由器查询进行流量清洗,通过GCDN智能分配节点隐藏源站IP,部署负载均衡硬件分担压力,以及接入高防机房抵御数百G恶意流量。掌握这些技术,可最大程度保障业务连续性。
- 热门数据榜
相关攻略
2026-08-31 11:56
2026-08-31 11:56
2026-08-31 11:55
2026-08-31 11:55
2026-08-31 11:54
2026-08-31 11:53
2026-08-31 11:53
2026-08-31 11:53
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

