本文共 2829 字,大约阅读时间需要 9 分钟。
Nmap 是测试中常用的网络探测工具,尽管其操作相对简单,但了解其深入使用方法对网络安全和网络管理非常有帮助。本文将从安装、实例应用、脚本使用以及参考指南等方面进行详细讲解,便于查阅和使用。
Nmap 可从其官方网站下载最新版本(目前最新版本为 Nmap 7.1)。下载后,按照以下步骤进行安装:
nmap -v 命令查看版本信息,确保安装成功。Nmap 的基本命令格式为:
nmap [扫描类型...] [选项...] {扫描目标说明} 简单的 TCP 端口扫描:
nmap -v scanme.nmap.org
该命令将扫描 scanme.nmap.org 主机上所有的保留 TCP 端口,并启用详细模式 -v。
综合扫描(包括操作系统和版本检测):
nmap -A -T4 scanme.nmap.org
选项 -A 启用操作系统和版本探测, -T4 提高扫描速度。
秘密SYN 扫描:
nmap -sS -O scanme.nmap.org/24
该命令进行秘密SYN 扫描,扫描 scanme.nmap.org 所在网段的所有主机,并尝试确定每台主机的操作系统类型。
指定端口进行 TCP 扫描:
nmap -sV -p 22,53,110,143,4564 198.116.0-255.1-127
该命令对指定的端口(如 22, 53, 110 等)进行 TCP 扫描,目标是 B 类网段 198.116.0-255.1-127。
随机主机扫描:
nmap -v -iR 100000 -P0 -p 80
该命令随机选择 100,000 台主机,扫描是否运行 Web 服务器(端口 80)。选项 -P0 禁止对主机列表进行探测。
-Pn:不探测主机存活状态,默认情况下 Nmap 会通过 ICMP 检查主机是否在线。-PB:默认探测端口(TCP 80 和 445,以及 ICMP)。-PS <portlist>:指定要探测的 TCP 端口列表。-PE:发送 ICMP Echo Request(即 ping 请求)。-PP:发送 ICMP Timestamp 请求。-PM:发送 ICMP 网络掩码请求。-sP:仅探测主机存活状态。-sS:秘密SYN 扫描,隐身扫描。-ST:TCP 扫描。-sU:UDP 扫描。-sV:版本探测。-O:操作系统识别。Nmap 提供丰富的脚本功能,可根据需求选择不同的脚本进行扫描。以下是常见脚本分类及其应用:
auth:绕过或利用目标主机的认证机制。broadcast:在局域网内探查更多服务开启状况(如 DHCP、DNS、SQL 服务器等)。brute:提供暴力破解方式,常用于对 SMB、SNMP 等服务进行简单密码破解。default:默认脚本扫描,提供基本服务信息收集。discovery:进行网络信息收集,如 SMB 枚举、SNMP 查询等。external:利用第三方数据库或资源(如 Whois 解析)。vuln:检查目标主机是否存在已知漏洞。VNC 扫描:
nmap --script=vnc-auth-bypass company.com/24
SMB 扫描:
nmap --script=smb-brute -p 445 company.com/24
数据库扫描:
nmap --script=mysql-brute -p 3306 db-server.example.com
网络信息收集:
nmap --script=broadcast-netbios-master-browser 192.168.137.1/24
Nmap 是一款开放源代码的网络探测和安全审核工具,其主要功能包括:
Nmap 的端口扫描结果通常包括以下状态:
open:目标主机正在监听该端口。filtered:防火墙或过滤器阻止了该端口的访问,Nmap 无法确定其状态。closed:端口没有服务监听,但可能随时开放。unfiltered:Nmap 无法确定该端口的状态,因为目标主机返回了探测报文。-sL:列表扫描,仅列出要扫描的目标。-sP: ping 扫描,确定主机是否在线。-P0:将所有主机视为在线,跳过主机发现。-n:禁用域名解析,加快扫描速度。-R:为所有目标解析域名。Nmap 支持多种端口扫描技术,常用的一些包括:
-sS:秘密SYN 扫描,隐身扫描。-sT:TCP 连接扫描,通过 socket API 获取状态信息。-sA:ACK 扫描,用于检测防火墙规则。-sU:UDP 扫描,常用于检测 DNS、SNMP、DHCP 等服务。-sW:TCP 窗口扫描,通过窗口大小判断端口状态。为了提高扫描速度,Nmap 提供多种时间和性能选项:
--min-hostgroup 和 --max-hostgroup:调整并行扫描组的大小。--min-parallelism 和 --max-parallelism:控制探测报文并行度。--max-rtt-timeout:设置探测报文的最大往返时间。--scan-delay:调整探测报文发送间隔。-T:选择扫描模板(如 T4 提高扫描速度)。为了规避防火墙和入侵检测系统,Nmap 提供以下选项:
-f:分段发送数据包。-D:使用诱饵进行隐蔽扫描。-S:设置源地址哄骗。-g:设置源端口哄骗。--randomize-hosts:随机排列目标主机顺序。Nmap 提供多种输出格式,常用的有:
-oN:标准输出。-oG:Grep 格式输出。-oX: XML 格式输出。-oA:同时生成所有格式的输出文件。Nmap 是一个强大的网络探测工具,其功能涵盖了主机发现、服务检测、操作系统识别、防火墙躲避等多个方面。通过合理使用 Nmap 的命令和脚本,可以完成从简单到复杂的网络安全任务。
转载地址:http://gcjfk.baihongyu.com/