1. 概述
1.1 漏洞信息
安全公告编号 | 危害评级 | 影响版本 |
---|---|---|
CNVD-2020-10487 | 高危 | 6.* 版本 |
7.* 分支 7.0.100 之前版本 | ||
8.* 分支 8.5.51 之前版本 | ||
9.* 分支 9.0.31 之前版本 |
1.2 漏洞描述
攻击者利用该漏洞,可在未授权的情况下远程读取特定目录下的任意文件。如:webapp 配置文件或源代码等。
1.3 漏洞影响
FineReport 暂未使用 Tomcat AJP 协议,因此修复操作不影响 FineReport 使用。
官网 服务器部署包 已经更换为没有漏洞的8.5.51版本。
2. 解决方案
2.1 未使用 Tomcat AJP 协议
2.1.1 方案一
如果未使用 Tomcat AJP 协议,可以直接将 Tomcat 升级到 9.0.31、8.5.51 或 7.0.100 版本进行漏洞修复。
2.1.2 方案二
如果无法立即进行版本更新,或者是更老版本的用户,建议直接关闭 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.2 使用了 Tomcat AJP 协议
2.2.1 方案一
建议将 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"/>
2.2.2 方案二
如果无法立即进行版本更新、或者是更老版本的用户,建议为 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" />