• Apache Tomcat存在文件包含漏洞CNVD-2020-10487,对应 CVE-2020-1938 以及解决办法


    信息来源: 国家信息安全漏洞共享平台
    
    2020年1月6日,国家信息安全漏洞共享平台(CNVD)收录了由北京长亭科技有限公司发现并报送的Apache Tomcat文件包含漏洞(CNVD-2020-10487,对应CVE-2020-1938)。攻击者利用该漏洞,可在未授权的情况下远程读取特定目录下的任意文件,漏洞评级为“高危”。请各单位尽快排查并根据以下建议升级或修复Tomcat。
    
    一、漏洞情况分析
    
    Tomcat是Apache软件基金会Jakarta 项目中的一个核心项目,作为目前比较流行的Web应用服务器,深受Java爱好者的喜爱,并得到了部分软件开发商的认可。Tomcat服务器是一个免费的开放源代码的Web应用服务器,被普遍使用在轻量级Web应用服务的构架中。
    
    2020年1月6日,国家信息安全漏洞共享平台(CNVD)收录了由北京长亭科技有限公司发现并报送的Apache Tomcat文件包含漏洞。Tomcat AJP协议由于存在实现缺陷导致相关参数可控,攻击者利用该漏洞可通过构造特定参数,读取服务器webapp下的任意文件。若服务器端同时存在文件上传功能,攻击者可进一步实现远程代码的执行。
    
    CNVD对该漏洞的综合评级为“高危”。
    
    二、漏洞影响范围
    
    漏洞影响的产品版本包括:
    
    Tomcat 6
    
    Tomcat 7
    
    Tomcat 8
    
    Tomcat 9
    
    三、漏洞处置建议
    
    目前,Apache官方已发布9.0.31、8.5.51及7.0.100版本对此漏洞进行修复,CNVD建议用户尽快升级新版本或采取临时缓解措施:
    
    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" />
    
    

    附:参考链接:

    https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html

    https://tomcat.apache.org/tomcat-8.0-doc/config/ajp.html

    https://stackoverflow.com/questions/21757694/what-is-ajp-protocol-used-for

  • 相关阅读:
    【面试题】Round A China New Grad Test 2014总结
    【C++】指针数组和数组指针
    快速排序算法递归和非递归实现
    StringTokenizer的用法
    java实时监测文件夹的变化,允许多用户同时访问,完成文件转移
    java统计当前在线数
    KMP算法的一种实现
    java.io.PrintWriter
    OOAOODOOP
    Java 编程技术中汉字问题的分析及解决
  • 原文地址:https://www.cnblogs.com/mumian2/p/12355783.html
Copyright © 2020-2023  润新知