CVE-2020-1938_Ghostcat-PoC - CVE-2020-1938
一个用于 Apache Tomcat AJP Ghostcat 漏洞 (CVE-2020-1938) 的强大 Python 利用工具,具备渗透测试和安全研究的高级功能。

🔍 概述
Ghostcat 漏洞 (CVE-2020-1938) 允许攻击者通过 AJP (Apache JServ Protocol) 连接器从部署在易受攻击的 Apache Tomcat 服务器上的 Web 应用程序中读取任意文件。该工具自动化了利用过程,支持:
- 多目标扫描 支持多线程
- 自定义字典支持 用于文件枚举
- 上传点检测 识别潜在的 RCE 向量
- JSP 载荷生成 用于后渗透
- 优化性能 可配置超时和线程
🎯 受影响版本
- Apache Tomcat 9.0.0.M1 to 9.0.0.30
- Apache Tomcat 8.5.0 to 8.5.50
- Apache Tomcat 7.0.0 to 7.0.99
📋 功能特性
核心功能
- ✅ 通过 AJP 协议利用实现任意文件读取
- ✅ 快速多线程扫描(默认 50+ 线程)
- ✅ 内置 25+ 个高价值目标的字典
- ✅ 支持自定义字典进行全面枚举
- ✅ 自动保存结果并组织输出
- ✅ 进度跟踪,显示预计完成时间和速率
高级功能
- ✅ 在 Spring、Struts 和 JSP 应用中检测上传点
- ✅ 配置文件解析(web.xml、Spring 等)
- ✅ JSP webshell 载荷生成
- ✅ 多目标批量处理
- ✅ 详细调试模式
- ✅ 优雅的中断处理(Ctrl+C)
🚀 安装
要求
- Python 3.6 或更高版本
- 无外部依赖(仅使用 Python 标准库)
快速开始
# Clone the repository
git clone https://github.com/abrewer251/CVE-2020-1938_Ghostcat-PoC.git
cd CVE-2020-1938_Ghostcat-PoC
# Make executable
chmod +x ghostcat.py
# Run
python3 ghostcat.py -h