服务公告

全部公告 > 安全公告 > Apache Log4j2 远程代码执行漏洞(CVE-2021-44228、CVE-2021-45046)

Apache Log4j2 远程代码执行漏洞(CVE-2021-44228、CVE-2021-45046)

2021-12-10

一、概要

近日,华为云关注到Apache Log4j2存在一处远程代码执行漏洞(CVE-2021-44228),在引入Apache Log4j2处理日志时,会对用户输入的内容进行一些特殊的处理,攻击者可以构造特殊的请求,触发远程代码执行。目前POC已公开,风险较高。

12月16日,官方披露低于2.16.0版本除了存在拒绝服务漏洞外,还存在另一处远程代码执行漏洞(CVE-2021-45046)。

Apache Log4j2是一款业界广泛使用的基于Java的日志记录工具。华为云提醒使用Apache Log4j2的用户尽快安排自检并做好安全加固。

参考链接:https://logging.apache.org/log4j/2.x/security.html

二、威胁级别

威胁级别:【严重】

(说明:威胁级别共四级:一般、重要、严重、紧急)

三、漏洞影响范围

影响版本:

2.0-beat9 <= Apache Log4j 2.x < 2.16.0(2.12.2 版本不受影响)

已知受影响的应用及组件:spring-boot-starter-log4j2/Apache Solr/Apache Flink/Apache Druid

安全版本:

Apache Log4j 1.x 不受影响

Apache Log4j 2.16.0

四、漏洞处置

目前官方已发布修复版本修复了该漏洞,请受影响的用户尽快升级Apache Log4j2所有相关应用到安全版本:https://logging.apache.org/log4j/2.x/download.html

Java 8(或更高版本)的用户建议升级到 2.16.0 版本;

Java 7 的用户建议升级到2.12.2版本,此版本是安全版本。

无法及时升级的用户,可参考官方建议将JndiLookup类从classpath中去除,并重启服务来进行风险规避:

zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

注:修复漏洞前请将资料备份,并进行充分测试。

华为云安全持续监测此漏洞及其变种攻击,有使用如下华为云安全服务的用户可开启防护功能:

1、华为云WAF具备对该漏洞防御能力,并提供免费1个月标准版试用服务,试用申请时间截至2022年1月31日。免费申请试用局点有:北京一北京四乌兰察布一上海一上海二广州广州友好贵阳一香港曼谷新加坡约翰内斯堡墨西哥一墨西哥二圣保罗一圣地亚哥。申请成功后将“Web基础防护”状态设置为“拦截”模式即可,具体方法请参见配置Web基础防护规则

2、华为云CFW的基础防御功能,能够检测和拦截各种变形攻击。在华为云CFW控制台,入侵防御->防御策略设置页面,打开基础防御功能开关,并启动拦截模式,具体方法参见配置入侵防御策略

3、华为云漏扫服务VSS,能够检测网站及主机资产是否存在该漏洞。在华为云VSS控制台,资产列表->网站->新增域名,资产列表->主机->添加主机,启动扫描,等待任务结束,查看扫描报告。具体参见用户指南

4、华为云企业主机安全服务HSS,能够检测应用是否存在该漏洞。在华为云企业主机安全HSS控制台,网页防篡改->防护列表页面,为所防护应用所在主机开启防护,开启防护页面,勾选“开启动态网页防篡改”。具体方法参见开启网页防篡改

5、华为云容器安全服务CGS,能够检测私有镜像是否存在该漏洞,基础版免费向客户开放。在华为云容器安全CGS控制台,镜像安全->镜像漏洞->私有镜像仓库漏洞,可以查看私有镜像仓库中的漏洞情况。具体方法参见管理私有镜像仓库漏洞