CVE-2020-1938/CNVD-2020-10487:Apache Tomcat 远程执行代码漏洞

背景

Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer Page(JSP)的支持。

Apache Tomcat会开启AJP连接器,方便与其他Web服务器通过AJP协议进行交互。由于Tomcat本身也内含了HTTP服务器,因此也可以视作单独的Web服务器。此漏洞为文件包含漏洞,攻击者可利用该漏洞读取或包含 Tomcat 上所有 webapp 目录下的任意文件,如:webapp 配置文件、源代码等。

受影响版本

Apache Tomcat 6
Apache Tomcat 7x <7.0.100
Apache Tomcat 8x <8.5.51
Apache Tomcat 9x <9.0.31

未受影响版本

Tomcat 7.0.0100
Tomcat 8.5.51
Tomcat 9.0.31

修复方案

临时禁用AJP协议端口,在conf/server.xm l配置文件中注释掉<Connector port=“8009” protocol="AJP/1.3"redirectPort=“8443” />

配置ajp配置中的secretRequired跟secret属性来限制认证

官方下载最新版下载地址:

https://tomcat.apache.org/download-70.cgi
https://tomcat.apache.org/download-80.cgi
https://tomcat.apache.org/download-90.cgi
https://github.com/apache/tomcat/releases

环境搭建:

Java环境
python环境
tomcat.apache环境(我用的是8.5.32)
搭建可参考:windows10下搭建Tomcat_v8.5.51环境

复现:

任意文件读取:

C:\Users\root>python C:\Users\root\Desktop\2020-10487.py -f WEB-INF/web.xml 127.0.0.1

在这里插入图片描述

poc:

https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi
https://github.com/0nise/CVE-2020-1938

学习:
https://www.77169.net/html/252175.html
https://blog.csdn.net/SouthWind0/article/details/105147369/
https://blog.csdn.net/silencediors/article/details/104484178
https://blog.csdn.net/SouthWind0/article/details/105147652/

猜你喜欢

转载自blog.csdn.net/anlalu233/article/details/105436277