首页 > 其他 > 详细

Tomcat Ajp(CVE-2020-1938)

时间:2020-03-03 12:34:04      阅读:108      评论:0      收藏:0      [点我收藏+]

Tomcat Ajp(CVE-2020-1938)

漏洞概况

漏洞影响范围:
Apache Tomcat 6
Apache Tomcat 7-7.0.100
Apache Tomcat 8-8.5.51
Apache Tomcat 9-9.0.31
漏洞分析

Tomcat服务器通过Connector连接器组件与客户端程序建立连接,“连接器”表示接收请求并返回响应的端点。即Connector组件负责接收客户的请求,以及把Tomcat服务器的响应结果发送给客户。

Web客户访问Tomcat服务器的两种方式:

技术分享图片

Tomcat默认在其配置文件server.xml中配置了两种Connector:

1.HTTP Connector
2.AJP Connector

HTTP Connector监听8080端口,负责建立HTTP连接。通过浏览器访问Tomcat服务器的Web应用时,使用的就是HTTP Connector组件。

<!-- Define a non-SSL/TLS HTTP/1.1 Connector on port 8080 -->
<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

AJP Connector可以通过AJP协议和另一个web容器进行交互。它监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。AJP连接器可以通过AJP协议和一个web容器进行交互。

<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

通过Gh0stcat漏洞,攻击者可以读取Tomcat下部署的所有webapp目录下的任意文件。同时,如果此应用在网站服务中具备上传功能,攻击者也可以先向服务端上传一个含有JSP代码的恶意文件(上传文件可以是任意类型,图片、纯文本文件等),然后利用Gh0stcat进行文件包含,从而达到代码执行的危害。

漏洞复现

  • 利用docker部署环境
docker run -d -p 8080:8080 -p 8009:8009 --name ghostcat duonghuuphuc/tomcat-8.5.32
  • 浏览器访问部署的服务出现如下图片

技术分享图片

  • 攻击
python CNVD-2020-10487-Tomcat-Ajp-lfi.py 192.168.195.133 -p 8009 -f WEB-INF/web.xml
# -p:指定端口;默认指定为8009
# -f:指定文件;默认指定为WEB-INF/web.xml
#默认路径为/usr/local/tomcat/webapps/ROOT
#使用python2

技术分享图片

EXP

https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi

参考

1

2

Tomcat Ajp(CVE-2020-1938)

原文:https://www.cnblogs.com/Wuser/p/12401498.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!