漏洞预警| Apache Tomcat 文件包含漏洞

发布者:系统管理员发布时间:2020-04-20浏览次数:192

  Apache Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器.默认情况下,Apache Tomcat会开启AJP连接器,方便与其他Web服务器通过AJP协议进行交互.但Apache Tomcat在AJP协议的实现上存在漏洞,导致攻击者可以通过发送恶意的AJP请求,可以读取或者包含Web应用根目录下的任意文件,如果配合文件上传任意格式文件,将可能导致任意代码执行(RCE).该漏洞利用AJP服务端口实现攻击,未开启AJP服务对外不受漏洞影响(tomcat默认将AJP服务开启并绑定至0.0.0.0/0)。


漏洞简介


严重程度:高危


CVE编号:CVE-2020-1938


影响版本:


Apache Tomcat = 6


7 <= Apache Tomcat < 7.0.100


8 <= Apache Tomcat < 8.5.51


9 <= Apache Tomcat < 9.0.31


漏洞成因


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


漏洞危害


攻击者通过Ajp协议端口利用该漏洞进行文件读取或包含 Tomcat 上所有 webapp 目录下的任意文件,如:webapp 配置文件、源代码等。


若目标服务器同时存在文件上传功能,攻击者可进一步实现远程代码执行。


漏洞防护


(1) Apache官方已发布9.0.31、8.5.51及7.0.100版本针对此漏洞进行修复,Apache Tomcat 6 已经停止维护,请升级到最新受支持的 Tomcat 版本以免遭受漏洞影响::


https://tomcat.apache.org/download-70.cgi


https://tomcat.apache.org/download-80.cgi


https://tomcat.apache.org/download-90.cgi


(2) 使用AJP协议的临时处置方法:为AJP Connector配置secret来设置 AJP 协议的认证凭证,且注意口令强度


(3)未使用AJP协议的临时处置方法:禁用AJP协议端口,在conf/server.xml配置文件中注释,并重启Tomcat服务