免责声明:使用本教程或工具,用户必须遵守所有适用的法律和法规,并且用户应自行承担所有风险和责任。
文章目录
- 一、 按脚本分类
- 1. 检查身份验证机制
- 2. 探测广播行为
- 3. 登录爆破
- 4. 默认脚本运行
- 5. 网络资产发现
- 6. Dos漏洞检测
- 7. 漏洞利用
- 8. 检测威胁主机
- 9. 模糊测试
- 10. 侵入脚本
- 11. 感染主机排查
- 12. 健康评估
- 13. 版本探测
- 14. 检测漏洞
- 二、按应用服务
- 1. 针对 HTTP/HTTPS 服务
- 2. 针对 FTP 服务
- 3. 针对 SMB 服务
- 4. 针对 SSH 服务
- 5. 针对 DNS 服务
- 6. 针对数据库服务
- MySQL
- PostgreSQL
- MongoDB
- 7. 针对 SMTP 服务
- 8. 针对 SNMP 服务
- 9. 针对 Telnet 服务
- 10. 针对 VNC 服务
- 总结
一、 按脚本分类
Nmap脚本主要分为以下几类,在扫描时可根据需要设置--script
参数进行扫描
auth:用于验证服务的身份验证功能
broadcast:扫描网络广播信息
brute:进行暴力破解攻击测试
default:运行默认的基础脚本(例如版本检测、安全配置检查)
discovery:进行网络发现(如查找子网主机或服务)
dos:检查拒绝服务漏洞
exploit:尝试利用已知漏洞
external:依赖外部资源(如 DNSBL 检查)
fuzzer:模糊测试服务的健壮性
intrusive:可能对目标产生较大影响的脚本
malware:检测目标是否感染恶意软件
safe:对目标几乎无影响的安全脚本
version:检测服务版本
vuln:查找已知漏洞
1. 检查身份验证机制
nmap --script=auth 192.168.30.*
扫描整个子网内主机,检测其身份验证机制的弱点,如匿名登录、默认凭据或弱密码配置问题。适合评估网络认证安全性
2. 探测广播行为
nmap --script=broadcast 192.168.30.*
扫描整个子网,分析网络中广播协议的信息(如 DHCP、mDNS、NetBIOS),适合发现局域网中的服务或设备广播行为
3. 登录爆破
nmap --script=brute 192.168.30.*
扫描整个子网内主机,对支持登录的服务(如 SSH、FTP)进行弱口令爆破测试,适合评估服务的账户密码安全性
4. 默认脚本运行
nmap --script=default 192.168.30.*
扫描整个子网内主机,使用默认脚本检测常见服务信息、安全配置以及潜在的漏洞问题,适合快速了解网络中主机的基本安全状态
5. 网络资产发现
nmap --script=discovery 192.168.30.*
扫描整个子网内主机,尝试发现隐藏设备、共享文件夹、子网网关等资源信息,适合用于网络资产发现和拓扑分析
6. Dos漏洞检测
nmap --script=dos 192.168.30.*
扫描整个子网内主机,检测其服务是否存在拒绝服务(DoS)漏洞,适合评估目标主机对特定攻击的防护能力
7. 漏洞利用
nmap --script=exploit 192.168.30.*
扫描整个子网内主机,尝试利用已知漏洞对服务进行测试和验证,适合用于模拟攻击并验证漏洞的可利用性
8. 检测威胁主机
nmap --script=external 192.168.30.*
扫描整个子网内主机,利用外部资源(如 DNS 黑名单、地理位置数据库)检查目标是否被标记为潜在威胁或存在异常行为,适合用于对目标的外部声誉或行为分析
9. 模糊测试
nmap --script=fuzzer 192.168.30.*
扫描整个子网内主机,对其服务进行模糊测试(Fuzzing),发送异常或随机数据包以检测服务的健壮性或异常响应,适合用于评估服务对恶意或异常数据的容错能力,但可能对目标服务造成影响
10. 侵入脚本
nmap --script=intrusive 192.168.30.*
扫描整个子网内主机,运行高影响性或侵入性强的脚本(如漏洞利用、暴力破解),适合深入测试目标的安全弱点,但可能对目标服务或网络造成明显影响,应慎重使用且需合法授权,一般不建议使用
11. 感染主机排查
nmap --script=malware 192.168.30.*
扫描整个子网内主机,检测是否存在恶意软件感染的迹象(如后门服务或已知恶意端口),适合用于网络威胁和感染排查
12. 健康评估
nmap --script=safe 192.168.30.*
扫描整个子网内主机,运行不会对目标造成影响的安全检查脚本,适合轻量级、安全的网络健康评估
13. 版本探测
nmap --script=version 192.168.30.*
扫描整个子网内主机,检测开放端口的服务版本信息,辅助识别可能存在的漏洞或配置问题,适合详细了解服务运行情况
14. 检测漏洞
nmap --script=vuln 192.168.30.*
扫描整个子网内主机,检测其服务是否存在已知漏洞(如 CVE 漏洞),适合初步评估网络中的漏洞分布情况
二、按应用服务
1. 针对 HTTP/HTTPS 服务
nmap --script=http* 192.168.30.*
扫描 HTTP/HTTPS 服务的相关信息,如页面标题、SSL/TLS 配置及已知漏洞。常见脚本包括抓取网页标题、枚举目录和文件、检查 SSL 证书和已知漏洞等
常用脚本
http-title
:抓取网页标题http-enum
:枚举常见的 HTTP 目录和文件http-vuln-*
:检测 HTTP 服务的已知漏洞ssl-cert
:获取 HTTPS 证书信息
2. 针对 FTP 服务
nmap --script=ftp* 192.168.30.*
扫描 FTP 服务的配置与安全性,常用脚本检查匿名登录、暴力破解密码和获取系统信息
常用脚本
ftp-anon
:检测是否允许匿名登录ftp-brute
:尝试暴力破解 FTP 密码ftp-syst
:获取 FTP 服务的系统信息
3. 针对 SMB 服务
nmap --script=smb* 192.168.30.*
扫描 SMB 服务的共享情况及漏洞,常见脚本包括获取操作系统信息、列举共享文件夹和检测已知漏洞
常用脚本
smb-os-discovery
:获取 SMB 的操作系统信息smb-enum-shares
:列举共享文件夹smb-vuln-*
:检测 SMB 服务的已知漏洞(如 EternalBlue)
4. 针对 SSH 服务
nmap --script=ssh* 192.168.30.*
扫描 SSH 服务的版本和配置,常用脚本包括收集主机密钥、检测身份验证方式以及暴力破解密码
常用脚本
ssh-hostkey
:收集目标的 SSH 主机密钥ssh-auth-methods
:检测支持的身份验证方式ssh-brute
:尝试暴力破解 SSH 密码
5. 针对 DNS 服务
nmap --script=dns* 192.168.30.*
扫描 DNS 服务的配置和漏洞,常见脚本包括暴力破解子域名、获取 NSID 信息和尝试区域传输
常用脚本
dns-brute
:暴力破解 DNS 子域dns-nsid
:获取 DNS NSID 信息dns-zone-transfer
:尝试执行 DNS 区域传输
6. 针对数据库服务
MySQL
nmap --script=mysql* 192.168.30.*
扫描 MySQL 服务的配置信息和漏洞,常用脚本包括获取服务信息、暴力破解用户密码及检测已知漏洞
常用脚本
mysql-info
:获取 MySQL 服务信息mysql-brute
:暴力破解 MySQL 用户密码mysql-vuln-*
:检测 MySQL 的已知漏洞
PostgreSQL
nmap --script=pgsql* 192.168.30.*
扫描 PostgreSQL 服务,常见脚本检查密码破解和服务信息
常用脚本
pgsql-brute
:暴力破解 PostgreSQL 用户密码pgsql-info
:获取 PostgreSQL 服务信息
MongoDB
nmap --script=mongodb* 192.168.30.*
扫描 MongoDB 服务的配置信息,常见脚本包括获取服务信息和暴力破解密码
常用脚本
mongodb-info
:获取 MongoDB 服务信息mongodb-brute
:尝试暴力破解 MongoDB 用户密码
7. 针对 SMTP 服务
nmap --script=smtp* 192.168.30.*
扫描 SMTP 服务的配置和漏洞,常见脚本包括枚举用户、列出支持的命令和检测与漏洞相关的 CVE
常用脚本
smtp-enum-users
:枚举 SMTP 用户smtp-commands
:列出 SMTP 支持的命令smtp-vuln-cve*
:检测与 SMTP 相关的漏洞
8. 针对 SNMP 服务
nmap --script=snmp* 192.168.30.*
扫描 SNMP 服务的配置和安全性,常见脚本包括暴力破解社区字符串、收集系统信息以及检测弱密码配置
常用脚本
snmp-brute
:暴力破解 SNMP 社区字符串snmp-info
:收集 SNMP 系统信息snmp-hh3c-logins
:检测弱密码的 SNMP 配置
9. 针对 Telnet 服务
nmap --script=telnet* 192.168.30.*
扫描 Telnet 服务的配置与安全性,常见脚本检查 Telnet 加密支持和暴力破解登录密码
常用脚本
telnet-encryption
:检查 Telnet 的加密支持telnet-brute
:暴力破解 Telnet 登录密码
10. 针对 VNC 服务
nmap --script=vnc* 192.168.30.*
扫描 VNC 服务的配置与安全性,常见脚本包括获取服务信息和暴力破解登录密码
常用脚本
vnc-info
:获取 VNC 服务信息vnc-brute
:尝试暴力破解 VNC 登录密码
总结
按服务分类的 Nmap 脚本扫描,可快速针对具体应用服务进行详细的安全检测和漏洞分析,结合通配符(如 http*
、ftp*
),更灵活高效。扫描时需确保合法授权,并根据需求调整参数和范围,上面还不是全部,列举了几个常用的
文章原创,欢迎转载,请注明文章出处