Tomcat文件漏洞问题及处理方式

学海无涯,旅“途”漫漫,“途”中小记,如有错误,敬请指出,在此拜谢!

一、前情提要

用了万年的tomcat,出现了bug。2月21日,据国家信息安全漏洞共享平台公开的漏洞公告中发现Apache Tomcat文件包含漏洞CNVD-2020-10487(对应CVE-2020-1938),Apache Tomcat服务器中被发现存在文件包含漏洞,攻击者利用该漏洞,可在未授权的情况下远程读取特定目录下的任意文件。

二、影响范围

Tomcat 6.*
Tomcat 7.* < 7.0.100
Tomcat 8.* < 8.5.51
Tomcat 9.* < 9.0.31

三、处理方式

目前,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)将此行注释掉(也可删掉该行):

(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” />

四、修改tomcat版本

1.SpringBoot升级内嵌tomcat版本

https://blog.csdn.net/qq_27808011/article/details/104492014

五、参考文档

  1. https://www.cnvd.org.cn/webinfo/show/5415
  2. https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html
  3. https://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html
  4. https://stackoverflow.com/questions/21757694/what-is-ajp-protocol-used-for
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章