CVE-2019-0232漏洞复现

CVE-2019-0232

1、漏洞简介

CVE-2019-0232漏洞是由于Tmocat CGI将命令行参数传递给Windows程序的方式存在错误,是的CHIServler被命令注入影响。

该漏洞只影响Windows平台,要求启用了CGIServlet和enableCmdLineArguments参数。但是CGIServlet和enableCmdLineArguments参数默认情况下都不启用。

漏洞影响范围:

  Apache Tomcat 9.0.0.M1 to 9.0.17

              Apache Tomcat 8.5.0 to 8.5.39

  Apache Tomcat 7.0.0 to 7.0.93

2、搭建环境

靶机:windows7

jdk环境(我这里用的jdk_1.8.0_201)

下载符合版本的Tomcat安装包    https://archive.apache.org/dist/tomcat/

3、漏洞复现

1、下载好安装包之后,进入bin目录执行startup.bat启动tomcat。

CVE-2019-0232漏洞复现

   2、访问http://localhost:8080

CVE-2019-0232漏洞复现

   3、修改配置文件

  Tomcat的CGI Servlet组件时默认关闭的,在conf/web.xml中找到注释的CGIServlet部分,删除注释,并配置enableCmdLineArguments和executable(删除注释的一共两部分;源文件没有enableCmdLineArguments和executable参数所以需要手打即下访红框内容

CVE-2019-0232漏洞复现

 CVE-2019-0232漏洞复现

   接着修改conf/context.xml文档中的<Context>添加privileged=“true”语句

CVE-2019-0232漏洞复现

   4、在apache-tomcat-9.0.13安装包中的webapps/ROOR/WEB-INF目录下新建cgi-bin文件夹,并在文件夹内创建bat文件,bat文件内容如下:

CVE-2019-0232漏洞复现

   环境配置完毕!重启tomcat服务。

5、利用payload:

http://localhost:8080/cgi-bin/hello.bat?&C%3A%5CWindows%5CSystem32%5Ccalc.exe

进行访问:

CVE-2019-0232漏洞复现

漏洞复现完成。

4、修复建议

  1. 禁用enableCmdLineArguments参数。
  2. 在conf/web.xml中覆写采用更严格的参数合法性检验规则。
  3. 升级tomcat到9.0.17以上版本。

相关推荐