Vulmap:一款功能强大的Web漏洞扫描和验证工具
字数 2530 2025-08-15 21:33:06
Vulmap Web漏洞扫描与验证工具使用指南
一、工具概述
Vulmap是一款功能强大的Web漏洞扫描和验证工具,主要功能包括:
- 对Web容器、Web服务器、Web中间件及CMS等Web程序进行漏洞扫描
- 具备漏洞利用功能,可验证漏洞真实性
- 支持两种工作模式:漏洞扫描(poc)和漏洞利用(exp)
二、环境准备
安装要求
- Python 3.7或更高版本
- 依赖组件:通过requirements.txt安装
安装步骤
git clone https://github.com/zhzyker/vulmap.git
cd vulmap
pip install -r requirements.txt
三、工具参数详解
基本参数
| 参数 | 描述 | 示例 |
|---|---|---|
| -h, --help | 显示帮助信息 | python3 vulmap.py -h |
| -u URL, --url URL | 目标URL | -u "http://example.com" |
| -f FILE, --file FILE | 批量扫描目标文件 | -f "/home/user/list.txt" |
| -m MODE, --mode MODE | 模式选择(poc/exp) | -m "exp" |
| -a APP, --app APP | 指定Web组件类型 | -a "weblogic" |
| -c CMD, --cmd CMD | 自定义远程执行命令 | -c "ping xxx.xxx" |
| -v VULN, --vuln VULN | 指定漏洞编号 | -v "CVE-2020-2729" |
| -o, --output FILE | 结果输出到文件 | -o "result.txt" |
| --list | 显示支持的漏洞列表 | --list |
| --debug | 调试模式 | --debug |
| --delay DELAY | 请求延时(秒) | --delay 5 |
| --timeout TIMEOUT | 超时时间(秒) | --timeout 15 |
四、使用示例
1. 基本扫描
# 测试所有漏洞PoC
python3 vulmap.py -u http://example.com
# 使用DNSlog检测无回显RCE漏洞
python3 vulmap.py -u http://example.com -c "ping xxx.xxx"
2. 指定组件扫描
# 检查Struts2漏洞
python3 vulmap.py -u http://example.com -a struts2
python3 vulmap.py -u http://example.com -m poc -a struts2
3. 漏洞利用
# WebLogic CVE-2019-2729漏洞利用
python3 vulmap.py -u http://example.com:7001 -v CVE-2019-2729
python3 vulmap.py -u http://example.com:7001 -m exp -v CVE-2019-2729
4. 批量操作
# 批量扫描
python3 vulmap.py -f list.txt
# 结果导出
python3 vulmap.py -u http://example.com:7001 -o result.txt
五、支持的漏洞列表
1. Drupal
- CVE-2019-6340: Drupal core RESTful远程代码执行
- 版本: < 8.6.10
2. Elasticsearch
- CVE-2014-3120: 远程代码执行
- 版本: < 1.2
- CVE-2015-1427: 远程代码执行
- 版本: 1.4.0 < 1.4.3
3. Jenkins
- CVE-2017-1000353: 远程代码执行
- 版本: <= 2.56, LTS <= 2.46.1
- CVE-2018-1000861: 远程代码执行
- 版本: <= 2.153, LTS <= 2.138.3
4. Nexus
- CVE-2019-7238: 远程代码执行
- 版本: 3.6.2 - 3.14.0
- CVE-2020-10199: 远程代码执行
- 版本: 3.x <= 3.21.1
5. Oracle WebLogic
| CVE编号 | 漏洞类型 | 影响版本 |
|---|---|---|
| CVE-2014-4210 | SSRF漏洞 | 10.0.2 - 10.3.6 |
| CVE-2017-3506 | WLS-WSAT RCE | 10.3.6.0, 12.1.3.0, 12.2.1.0-2 |
| CVE-2017-10271 | WLS-WSAT RCE | 10.3.6.0, 12.1.3.0, 12.2.1.1-2 |
| CVE-2018-2894 | 反序列化任意文件上传 | 12.1.3.0, 12.2.1.2-3 |
| CVE-2019-2725 | WLS9-Async反序列化RCE | 10.3.6.0, 12.1.3.0 |
| CVE-2019-2729 | WLS9-Async反序列化RCE | 10.3.6.0, 12.1.3.0, 12.2.1.3 |
| CVE-2020-2551 | WLScore反序列化RCE | 10.3.6.0, 12.1.3.0, 12.2.1.3-4 |
| CVE-2020-2555 | T3反序列化RCE | 3.7.1.17, 12.1.3.0.0, 12.2.1.3-4.0 |
| CVE-2020-2883 | IIOP/T3反序列化RCE | 10.3.6.0, 12.1.3.0, 12.2.1.3-4 |
| CVE-2020-14882 | 控制台RCE | 10.3.6.0, 12.1.3.0, 12.2.1.3-4, 14.1.1.0.0 |
6. RedHat JBoss
- CVE-2010-0738: JMX-Console反序列化任意文件上传
- 版本: 4.2.0 - 4.3.0
- CVE-2010-1428: Web-Console反序列化任意文件上传
- 版本: 4.2.0 - 4.3.0
- CVE-2015-7501: JMXInvokerServlet反序列化任意文件上传
- 版本: 5.x, 6.x
7. ThinkPHP
- CVE-2019-9082: RememberMe反序列化RCE
- 版本: < 3.2.4
- CVE-2018-20062: RememberMe反序列化RCE
- 版本: <= 5.0.23, 5.1.31
六、注意事项
- 使用漏洞利用(exp)模式前,请确保已获得合法授权
- 批量扫描时建议设置适当的
--delay参数,避免对目标系统造成过大负载 - 对于无回显漏洞,可使用
-c参数配合DNSlog进行检测 - 建议在测试环境中验证漏洞后再在生产环境使用
- 工具输出结果应妥善保存,避免敏感信息泄露
七、更新与维护
建议定期从GitHub仓库拉取最新版本,以获取新增漏洞检测能力:
cd vulmap
git pull origin master
pip install -r requirements.txt
通过以上全面指南,您可以充分利用Vulmap进行Web漏洞扫描和验证工作。请始终遵循合法合规的原则使用安全工具。