近期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)之间所有版本的所有用户。
安全建议
- 请尽快升级Apache Log4j2所有相关应用到最新的log4j-2.15.0版本,请参见Download Apache Log4j2。
- 升级已知受影响的应用及组件,例如spring-boot-starter-log4j2、Apache Struts2、Apache Solr、Apache Druid、Apache Flink等。
- 临时缓解方案。可升级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。
相关链接
- 如果您的应用无法及时修复和验证,可以立即开通和使用阿里云ARMS RASP防护能力,确保您的应用免受攻击。相关内容,请参见什么是应用安全。
- 阿里云安全漏洞预警,请参见Apache Log4j2远程代码执行漏洞公告详情。