腾讯云公告 > 公告详情
扫码查看公告

【安全通告】Apache Log4j 2 远程代码执行漏洞(CVE-2021-44228)

尊敬的腾讯云用户,您好!

腾讯云安全运营中心监测到, Apache Log4j 2 被披露出存在严重代码执行漏洞,目前官方已发布正式安全公告及版本(漏洞编号:CVE-2021-44228),漏洞被利用可导致服务器被入侵等危害。

为避免您的业务受影响,腾讯云安全建议您及时开展安全自查,如在受影响范围,请您及时进行更新修复,避免被外部攻击者入侵。

漏洞详情
Apache Log4j 2是一个开源的日志记录组件,使用非常的广泛。在工程中以易用方便代替了 System.out 等打印语句,它是JAVA下最流行的日志输入工具。

使用 Log4j 2 在一定场景条件下处理恶意数据时,可能会造成注入类代码执行。

由于Log4j2 作为日志记录基础第三方库,被大量Java框架及应用使用,只要用到 Log4j2 进行日志输出且日志内容能被攻击者部分可控,即可能会受到漏洞攻击影响。因此,该漏洞也同时影响全球大量通用应用及组件,例如 :
Apache Struts2
Apache Solr
Apache Druid
Apache Flink
Apache Flume
Apache Dubbo
Apache Kafka
Spring-boot-starter-log4j2
ElasticSearch
Logstash

建议及时检查并升级所有使用了 Log4j 组件的系统或应用。

风险等级
高风险

漏洞风险
攻击者利用该漏洞可导致任意代码执行

影响版本
Apache log4j2 >= 2.0, <= 2.14.1

安全版本
Apache log4j2 2.16.0

修复建议
1. 升级到官方最新版本(推荐)
目前官方最新版本为 log4j-core-2.16.0(https://repo.maven.apache.org/maven2/org/apache/logging/log4j/log4j-core/2.16.0/),用户可以升级或者将代码更新到该版本

2. 关闭 log4j 的 lookup 功能(以下任选其一)
a)配置文件方式关闭(推荐) 
在应用程序的classpath中的 log4j2.component.properties 配置文件(如果没有文件,则手工新建)中添加如下两行内>=2.9.1以及之后版本
    log4j2.formatMsgNoLookups=True
    log4j.formatMsgNoLookups=True
b)jvm参数配置关闭(不推荐,容易丢失配置) 
在 JVM 启动参数中加上 -Dlog4j2.formatMsgNoLookups=true 和 -Dlog4j.formatMsgNoLookups=true 对于2.0~2.10版本,应先升级至2.10+,再增加jvm参数

3. 升级到高版本JDK(推荐) 
高版本JDK有一些安全限制,建议升级JDK到6u211、7u201、8u191、11.0.1及以上的版本,可以在一定程度上限制JNDI等漏洞利用方式

其他临时缓解措施:
禁止不必要的业务访问外网,可通过防火墙、安全组等,禁止相关应用及业务主动对外连接



【备注】:建议您在升级前做好数据备份工作,避免出现意外


漏洞参考
https://logging.apache.org/log4j/2.x/security.html

腾讯安全解决方案
腾讯T-Sec Web应用防火墙(WAF)、腾讯T-Sec高级威胁检测系统(NDR、御界)、腾讯T-Sec云防火墙均已支持检测拦截利用Log4j2 远程代码执行漏洞的攻击活动。