如何分析Tomcat-CVE-2020-1938复现

本篇文章为大家展示了如何分析Tomcat-CVE-2020-1938复现,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

0x01漏洞概述

Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全局管理和Tomcat阀等。由于Tomcat本身也内含了HTTP服务器,因此也可以视作单独的Web服务器。攻击者通过Ajp协议端口利用该漏洞进行文件读取或包含 Tomcat 上所有 webapp 目录下的任意文件,如:webapp 配置文件、源代码等。

0x02漏洞影响范围

国内共有二十多万   漏洞影响版本:

Tomcat 6.*Tomcat 7.* < 7.0.100Tomcat 8.* < 8.5.51Tomcat 9.* < 9.0.31

0x03复现环境安装

服务器环境:Ubuntu 16 阿里云源

1.安装JDK

我这里用的是JDK1.8 使用apt命令可直接安装

apt install openjdk-8-jre-headless

2.下载安装Tomcat

可以在Github上下载存在漏洞的版本 我这里下载的是tomcat-7.0.99

https://github.com/apache/tomcat/releases

然后上传到我们服务器里面

这里有两个坑 一个是要在Tomcat根目录下新建一个logs文件夹,还有一个则是缺少一些重要的文件。

运行Tomcat显示成功了,但是我们发现tomcat并没启动,查看日志发现缺少重要的文件。

从github上下载的安装包是不完整的,我们需要到官网上去下载

https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.99/bin/

将我们服务器上bin文件件内缺少的文件上传上去。

给启动文件加上权限chmod +x *.sh 然后./startup.sh启动

成功安装 Tomcat 7.0.99 查看一下默认的AJP connector服务的8009端口是否开启

至此,CVE-2020-1938复现环境的安装工作均已完成。(如觉得替换比较麻烦可自己使用官网完整版的安装包安装)

0x04漏洞利用

漏洞利用脚本可在Github下载

https://github.com/xindongzhuaizhuai/CVE-2020-1938https://github.com/nibiwodong/CNVD-2020-10487-Tomcat-ajp-POC

或后台回复003获取。

读取WEB-INF/web.xml文件

python poc.py -p 8009 -f "/WEB-INF/web.xml" 154.221.20.69

0x05加固修复建议

1.Apache官方已发布9.0.31、8.5.51及7.0.100版本针对此漏洞进行修复,Apache Tomcat 6 已经停止维护,请升级到最新受支持的 Tomcat 版本以免遭受漏洞影响:

https://tomcat.apache.org/download-70.cgi https://tomcat.apache.org/download-80.cgihttps://tomcat.apache.org/download-90.cgi

2.使用AJP协议的临时处置方法:为AJP Connector配置secret来设置 AJP 协议的认证凭证,且注意口令强度

3.未使用AJP协议的临时处置方法:禁用AJP协议端口,在conf/server.xml配置文件中注释,并重启Tomcat服务

<Connector port="8009" protocol="AJP/1.3"redirectPort="8443" />

上述内容就是如何分析Tomcat-CVE-2020-1938复现,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注蜗牛博客行业资讯频道。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接