《Nmap 脚本扫描;Web 漏洞扫描工具》

一、Nmap 脚本扫描

Nmap 脚本引擎(NSE)支持通过脚本扩展功能,实现漏洞检测、服务枚举、暴力破解等高级操作。

1. 脚本分类与使用

脚本类别

功能

典型脚本示例

vuln

检测常见漏洞(如 CVE 漏洞)

http-vuln-cve2017-5638(检测 Apache Struts 漏洞)

auth

处理鉴权绕过(如 HTTP 基础认证绕过)

http-auth

brute

暴力破解(SSH、MySQL、SMB 等)

smb-brute

discovery

网络发现(SMB 枚举、SNMP 查询)

smb-os-discovery

http

HTTP 服务检测(目录枚举、标题提取)

http-enum, http-title

2. 常用命令示例

  • 漏洞扫描
nmap --script=vuln 192.168.1.1  # 检测目标主机常见漏洞
nmap --script=http-vuln-cve2017-5638 -p 80  # 检测特定 CVE 漏洞
  • 服务枚举
nmap --script=smb-os-discovery -p 445 192.168.1.4  # 获取 SMB 服务信息
  • 暴力破解
nmap --script=mysql-brute -p 3306 --script-args=userdb=/usr/share/nmap/scripts/mysql-users.txt  # MySQL 暴力破解

3. 实战案例

场景:检测 Web 服务器敏感目录

nmap -p 80 --script=http-enum 192.168.1.10  # 输出示例:
# /admin/: Possible admin folder
# /config/: Potentially interesting directory

输出结果

Starting Nmap 7.94 ( https://nmap.org  ) at 2025-08-04 10:00 UTC
Nmap scan report for 192.168.1.10
Host is up (0.001s latency).
PORT   STATE SERVICE
80/tcp open  http
| http-enum: 
|   /admin/: Possible admin folder
|   /config/: Potentially interesting directory
|   /docs/: Potentially interesting directory
|_  /robots.txt: Robots file

二、Web 漏洞扫描工具

Web 漏洞扫描工具专注于检测 Web 应用程序的安全漏洞,如 SQL 注入、XSS、文件包含等。

1. 开源工具

工具

功能

特点

OWASP ZAP

自动化扫描 SQL/XSS/CSRF 等漏洞,支持主动/被动扫描

集成于 Kali Linux,提供 API 接口

Nikto

检测 Web 服务器配置错误、过时软件、危险文件

快速扫描,支持自定义测试策略

sqlmap

自动化 SQL 注入检测与利用

支持多种数据库(MySQL/Oracle/PostgreSQL 等)

示例命令

zap-cli quick-scan --spider --ajax-spider --scanners all http://example.com   # OWASP ZAP 快速扫描
nikto -h http://192.168.1.10  -p 80  # Nikto 扫描 Web 服务
sqlmap -u " http://example.com/?id=1 " --dbs  # 检测 SQL 注入并获取数据库列表

2. 商业工具

工具

功能

特点

Burp Suite

漏洞扫描、爬虫、中间人攻击

支持插件扩展,适合深度渗透测试

AppScan

自动化漏洞扫描(OWASP Top 10、PCI DSS 等)

提供修复建议,支持大型企业级应用

3. 实战技巧

  • 精准扫描:结合 Nmap 端口扫描结果,仅对开放端口进行漏洞检测:
nmap -sV -p 80,443 192.168.1.10 --script=http-vuln*  # 仅扫描 HTTP 服务漏洞
  • 绕过防护:使用 --scan-delay 控制扫描速度,避免触发 WAF:
nmap --script=http-slowloris --max-parallelism 100 192.168.1.10  # 低速 DDoS 检测
  • 伪装 User-Agent:
nmap --script=http-useragent "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1)" 192.168.1.10

三、工具协同与工作流

  1. 资产发现
nmap -sn 192.168.1.0/24  # 发现存活主机
nmap -sV -p- 192.168.1.10  # 扫描目标主机开放端口及服务
  1. 漏洞扫描
zap-cli start --spider --ajax-spider http://192.168.1.10   # OWASP ZAP 主动扫描
sqlmap -u " http://192.168.1.10/login.php?id=1 " --batch  # SQL 注入自动化检测
  1. 报告生成
zap-cli report -o report.html -f html  # 生成 OWASP ZAP HTML 报告

四、注意事项

  1. 合法授权:所有扫描需获得书面授权,避免触犯《网络安全法》。
  2. 误报处理:结合人工验证(如手动测试 SQL 注入点)。使用 --verify 参数重新验证可疑漏洞。
  3. 性能优化:调整并发数:--min-parallelism 100 --max-parallelism 500限制扫描范围:--exclude 192.168.1.1

五、总结

  • Nmap 脚本扫描:适合快速探测服务漏洞、枚举目录/用户,需结合脚本分类(如 vuln/http)灵活调用。
  • Web 漏洞扫描工具:OWASP ZAP 适合自动化测试,sqlmap 适合深度 SQL 注入利用,Burp Suite 适合人工渗透测试。

推荐组合方案

# 标准渗透测试流程
nmap -sV -p- 192.168.1.10 --script=default,vuln  # 基础扫描
zap-cli quick-scan --self-contained http://192.168.1.10   # Web 漏洞扫描
sqlmap -u " http://192.168.1.10/vulnerable.php?id=1 " --dbs  # SQL 注入验证

通过合理选择工具与策略,可高效完成网络资产测绘与漏洞挖掘,为安全加固提供数据支撑!

原文链接:,转发请注明来源!