Apache Tomcat远程代码执行漏洞(CVE-2020-9484 )

来源:scanv2020.05.21

一 漏洞概述

2020年5月20日,Apache官方发布安全通告修复了Apache Tomcat Session 反序列化远程代码执行漏洞(CVE-2020-9484)。若使用了Tomcat的session持久化功能,那么不安全的配置将导致攻击者可以发送恶意请求执行任意代码。

攻击者成功利用此漏洞需要同时满足以下4个条件:攻击者能够控制服务器上文件的内容和文件名称;服务器PersistenceManager配置中使用了FileStore;PersistenceManager中的sessionAttributeValueClassNameFilter被配置为“null”,或者过滤器不够严格,导致允许攻击者提供反序列化数据的对象;攻击者知道使用的FileStore存储位置到攻击者可控文件的相对路径。

二 影响版本

Apache Tomcat 10.0.0-M1至10.0.0-M4
Apache Tomcat 9.0.0.M1至9.0.34
Apache Tomcat 8.5.0至8.5.54
Apache Tomcat 7.0.0至7.0.103

三 复现过程

1.从Apache Tomcat官网下载的安装包名称中会包含Tomcat的版本号,如果用户解压后没有更改Tomcat的目录名称,可以通过查看文件夹名称来确定当前使用的版本。

如果解压后的Tomcat目录名称被修改过,或者通过Windows Service Installer方式安装,可使用软件自带的version模块来获取当前的版本。也可以进入Tomcat安装目录的bin目录,运行version.bat(Linux运行version.sh)后,可查看当前的软件版本号。

2.查看conf/context.xml文件或具体项目的server.xml文件中,是否存在以下<Manager>节点。

若当前版本在受影响范围内且在PersistenceManager配置中使用了FileStore,则可能存在安全风险。

四 影响范围

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

五 修复建议

升级到 Apache Tomcat 10.0.0-M5或更高版本

升级到 Apache Tomcat 9.0.35或更高版本

升级到 Apache Tomcat 8.5.55或更高版本

升级到 Apache Tomcat 7.0.104或更高版本

若暂时无法进行升级操作,也可采用以下措施进行临时缓解:禁止使用Session持久化功能FileStore,或者单独配置sessionAttributeValueClassNameFilte的值来确保只有特定属性的对象可以被序列化与反序列化。

六 相关链接

seclists:https://seclists.org/oss-sec/2020/q2/136

ZoomEye 网络空间搜索引擎:https://www.zoomeye.org/searchResult?q=app%3A%22Apache%20Tomcat%22

热门文章

  • WebSphere远程代码执行漏洞(CVE-2020-4450)

    2020年6月5日,IBM官方发布通告修复了WebSphere Application Server(WAS)中的远程代码执行(CVE-2020-4450)漏洞,此漏洞由IIOP协议上的反序列化造成,未经身份认证的攻击者可以通过IIOP协议远程攻击WAS服务器,在目标服务端执行任意代码,获取系统权限,进而接管服务器。

  • SpaceX火箭发射成功,勒索团伙入侵其IT供应商内网并留下祝贺信息

    SpaceX和美国宇航局NASA首次载人火箭发射成功后不久,勒索团伙DopplePaymer即刻宣布入侵了NASA IT供应商之一DMI的内网。

  • 用友NC反序列化远程命令执行“0-Day”漏洞

    2020年6月4日,知道创宇监测到有国内安全组织披露用友NC存在反序列化远程命令执行“0-Day”漏洞。经知道创宇安全团队分析,漏洞真实存在,攻击者通过构造特定的HTTP请求,可以成功利用漏洞在目标服务器上执行任意命令,该漏洞风险极大,可能造成严重的信息泄露事件。

关注知道创宇云安全

获取安全动态