Apache Tomcat文件包含漏洞(CVE-2020-1938)

来源:scanv2020.02.21

一 漏洞概述

Tomcat是Apache软件基金会Jakarta 项目中的一个核心项目,作为目前比较流行的Web应用服务器,深受Java爱好者的喜爱,并得到了部分软件开发商的认可。Tomcat服务器是一个免费的开放源代码的Web应用服务器,被普遍使用在轻量级Web应用服务的构架中。

2020年2月20日,国家信息安全漏洞共享平台(CNVD)公开了关于Apache Tomcat存在文件包含漏洞。存在于Apache Tomcat中的文件包含漏洞(CNVD-2020-10487,即CVE-2020-1938)可使攻击者在未授权的情况下远程读取特定目录下的任意文件。

漏洞源于Tomcat AJP协议实现中的缺陷,使得相关参数可控。攻击者通过向AJP协议端口(默认8009)发送精心构造的数据,可读取服务器webapp目录下的任意文件,比如配置文件、源代码等。而且如果服务器端有文件上传功能,那么攻击者还可能进一步实现远程代码的执行。

二 影响版本

受影响产品版本:
Tomcat 6 (已不受维护)
Tomcat 7 Version < 7.0.100
Tomcat 8 Version < 8.5.51
Tomcat 9 Version < 9.0.31

不受影响产品版本:
Tomcat 7 Version >= 7.0.100
Tomcat 8 Version >= 8.5.51
Tomcat 9 Version >= 9.0.31

三 复现过程

四 影响范围

根据 ZoomEye 网络空间搜索引擎对关键字 “Tomcat” 进行搜索,共得到 5,594,335 条 IP 历史记录,主要分布在中国、美国等国家。

五 修复建议

目前,Apache官方已发布9.0.31、8.5.51及7.0.100版本对此漏洞进行修复,建议受影响用户尽快升级新版本或采取临时缓解措施:

1. 如未使用Tomcat AJP协议:
如未使用 Tomcat AJP 协议,可以直接将 Tomcat 升级到 9.0.31、8.5.51或 7.0.100 版本进行漏洞修复。
如无法立即进行版本更新、或者是更老版本的用户,建议直接关闭AJPConnector,或将其监听地址改为仅监听本机localhost。
具体操作:
(1)编辑 <CATALINA_BASE>/conf/server.xml,找到如下行(<CATALINA_BASE> 为 Tomcat 的工作目录):
<Connector port="8009"protocol="AJP/1.3" redirectPort="8443" />
(2)将此行注释掉(也可删掉该行):
<!--<Connectorport="8009" protocol="AJP/1.3"redirectPort="8443" />-->
(3)保存后需重新启动,规则方可生效。

2. 如果使用了Tomcat AJP协议:
建议将Tomcat立即升级到9.0.31、8.5.51或7.0.100版本进行修复,同时为AJP Connector配置secret来设置AJP协议的认证凭证。例如(注意必须将YOUR_TOMCAT_AJP_SECRET更改为一个安全性高、无法被轻易猜解的值):
<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS" secret="YOUR_TOMCAT_AJP_SECRET"/>
如无法立即进行版本更新、或者是更老版本的用户,建议为AJPConnector配置requiredSecret来设置AJP协议认证凭证。例如(注意必须将YOUR_TOMCAT_AJP_SECRET更改为一个安全性高、无法被轻易猜解的值):
<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS"requiredSecret="YOUR_TOMCAT_AJP_SECRET" />

 

六 相关链接

ZoomEye 网络空间搜索引擎:https://www.zoomeye.org/searchResult?q=Tomcat

1)Tomcat 官网:
https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html
https://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html
2)https://stackoverflow.com/questions/21757694/what-is-ajp-protocol-used-for
3)CNVD公告:
https://www.cnvd.org.cn/flaw/show/CNVD-2020-10487

热门文章

关注知道创宇云安全

获取安全动态