近期Apache Log4j2被暴露了一个严重的远程代码执行安全漏洞,有严重的安全风险,请您尽快升级您的应用,避免因为安全漏洞造成损失。

时间线

  • 2021年12月9日,阿里云安全团队发布Apache Log4j2远程代码执行漏洞(CVE-2021-44228)安全通告。
  • 2021年12月10日,阿里云安全团队发现绕过,更新建议修复版本为Apache Log4j 2.15.0及以上版本
  • 2021年12月15日,阿里云安全团队更新安全建议,更新建议修复版本为Apache Log4j 2.16.0以及Apache Log4j 2.12.2安全版本

漏洞描述

Apache Log4j2是一款优秀的Java日志框架。近日,阿里云安全团队向Apache官方报告了Apache Log4j2远程代码执行漏洞。由于Apache Log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。经阿里云安全团队验证,Apache Struts2、Apache Solr、Apache Druid、Apache Flink等均受影响。

漏洞评级

  • CVE-2021-44228 Apache Log4j远程代码执行漏洞:严重
  • CVE-2021-45046 Apache Log4j拒绝服务与远程代码执行漏洞:严重

影响范围

使用Apache Log4j 2.0.0~2.15.0(包含2.15.0-rc1)之间所有版本的所有用户。

安全建议

  1. 请尽快升级Apache Log4j2所有相关应用到最新的log4j-2.15.0版本,请参见Download Apache Log4j2
  2. 升级已知受影响的应用及组件,例如spring-boot-starter-log4j2、Apache Struts2、Apache Solr、Apache Druid、Apache Flink等。
  3. 临时缓解方案。可升级JDK版本至6u211/7u201/8u191/11.0.1以上,可以在一定程度上限制JNDI等漏洞利用方式。对于大于2.10版本的Log4j,可设置log4j2.formatMsgNoLookups为True,或者将JndiLookup类从classpath中去除,例如zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

相关链接