CVE-2020-1938 Tomcat任意文件读取漏洞复现

今天继续给大家介绍渗透测试相关知识,本文主要内容是CVE-2020-1938 Tomcat任意文件读取漏洞复现。

免责声明:
本文所介绍的内容仅做学习交流使用,严禁利用文中技术进行非法行为,否则造成一切严重后果自负!
再次强调:严禁对未授权设备进行渗透测试!

一、CVE-2020-1938漏洞简介与环境搭建

CVE-2020-1938漏洞是由长亭科技研究员于2020年发现的存在于Tomcat中的漏洞,由于Tomcat上的设计缺陷,攻击者通过Tomcat AJP Connectot可以读取tomcat中webapp目录(Tomcat默认网页主目录)下的任意文件。
Tomcat AJP协议是Apache JServ Protocol的简称,由于Tomcat处理静态资源文件的性能较差,因此Tomcat存在一个“补偿”方案,即静态文件的请求可以通过Apache服务器或IIS服务器代理,Tomcat与Apache服务器之间使用AJP协议进行通信,AJP采用二进制的方式进行数据传输,并且由于Web服务器与Tomcat之间TCP的类似长链接机制,因此可以提升静态资源的传输效率。在默认情况下,Tomcat如果开放8009端口,那么就大概率开启了AJP服务,因为8009端口就是AJP服务的默认端口。
该漏洞影响版本:
Tomcat 9.0——9.0.31
Tomcat 8.0——8.5.51
Tomcat 7.0——7.0.100
Tomcat 6.X
注:更为早版本的Tomcat未研究验证
为了复现CVE-2020-1938 Tomcat任意文件读取漏洞,我们使用Vulhub搭建靶场环境,进入/vulhub-master/tomcat/CVE-2020-1938/目录后,执行命令:

docker-compose up -d

即可下载并开启漏洞环境,该命令执行结果如下所示:
在这里插入图片描述
执行命令:

docker-compose config

即可查看该漏洞配置,如下所示:
在这里插入图片描述

二、CVE-2020-1938漏洞复现

接下来,我们就可以复现该漏洞了。复现该漏洞我们需要下载EXP,我们可以去Github或者其他网站搜索对应的EXP,在这里我提供一个他人写的EXP,URL为:https://github.com/sv3nbeast/CVE-2020-1938-Tomact-file_include-file_read
页面如下所示:
在这里插入图片描述
该EXP是采用Python2开发的,因此我们运行该脚本需要有Python2的环境,下载完成后,我将其上传到含有Python2环境的设备上,然后执行命令:

python Tomcat-ROOT路径下文件读取\(CVE-2020-1938\).py 192.168.136.13 -p 8009 -f WEB-INF/web.xml 

在上述命令中,脚本后面跟目标IP,-p参数指定了目标端口号,-f参数表示要读取的文件,执行结果如下所示:
在这里插入图片描述
从上图可以看出,我们成功读取了目标系统的文件,CVE-2020-1938 Tomcat任意文件读取漏洞复现成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值