Apache Tomcat文件包含漏洞复现

  • Post author:
  • Post category:其他




前言


漏洞原理:


Apache Tomcat文件包含漏洞(CNVD-2020-10487/CVE-2020-1938),该漏洞是由于Tomcat AJP协议存在缺陷而导致,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的任意文件。若目标服务器同时存在文件上传功能,攻击者可进一步实现远程代码执行。


影响版本:


Apache Tomcat 6

Apache Tomcat 7 < 7.0.100

Apache Tomcat 8 < 8.5.51

Apache Tomcat 9 < 9.0.31



漏洞复现

使用docker环境部署

docker search tomcat-8.5.32					#搜索镜像
docker pull duonghuuphuc/tomcat-8.5.32      #拉取镜像
docker images   		#查看镜像
docker run -d -p 8080:8080 -p 8009:8009 duonghuuphuc/tomcat-8.5.32   #运行镜像并映射端口
docker ps -a            #查看进程

检测工具xray:

https://github.com/chaitin/xray


检测命令:

./xray_linux_amd64 servicescan --target 127.0.0.1:8009

在这里插入图片描述



漏洞修复


1.版本升级


更新到以下版本号可以修复该漏洞:


Apache Tomcat 7.0.100



Apache Tomcat 8.5.51



Apache Tomcat 9.0.31



2.无法升级版本,可以关闭AJP Connector

  1. 找到tomcat目录下的

    /conf/server.xml

    文件,打开定位到


    <Connector port="8009"protocol="AJP/1.3" redirectPort="8443" />
  2. 将其注释掉


    <!--<Connectorport="8009" protocol="AJP/1.3"redirectPort="8443" />-->


    在这里插入图片描述
  3. 重启tomcat服务


3.设置AJP认证凭证


使用tomcat 7和tomcat 9的配置为

<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS" secret="AJP_SECRET"/>

使用tomcat 8的配置为

<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS"requiredSecret="AJP_SECRET" />

在这里插入图片描述



参考文章


https://www.cnblogs.com/ethtool/p/12455139.html




版权声明:本文为baidu_38844729原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。