Flink等多组件受影响,Apache Log4j曝史诗级漏洞

2021-12-13 09:32:03

全球知名开源日志组件Apache Log4j被曝存在严重高危险级别远程代码执行漏洞,攻击者可以利用该漏洞远程执行恶意代码。据阿里云通报,由Apache log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,触发远程代码执行漏洞。

该漏洞于12月7日由游戏平台Minecraft用户在网上曝光,据称黑客可以通过操作日志消息(甚至在聊天信息中键入内容),并且还可以在Minecraft服务器端执行恶意代码。Apache log4j官方在7日当天便发布2.15.0-rc1版本以修复漏洞。

目前受漏洞影响的主要是Apache Log4j 2.x <= 2.14.1版本,当用户使用Apache Log4j2来处理日志时,漏洞会对用户输入的内容进行特殊处理,攻击者便可以在Apache Log4j2中构造特殊请求来触发远程代码执行。


如何判断是否受影响,开发者只需排查在Java应用中是否引入log4j-api, log4j-core两个jar文件,若存在,建议立即进行安全排查,采取防护措施。

目前可能受影响的组件有:

Spring-Boot-strater-log4j2

Apache Solr

Apache Flink

Apache Druid


这意味着有大量的第三方应用程序也可能受到了感染与威胁。

如何修复:
尽快将Apache Log4j 2所有相关应用升级到最新的 log4j-2.15.0-rc2 版本,地址:https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2

如果无法尽快更新版本,可以通过以下方法紧急缓解:

a、修改jvm参数 -Dlog4j2.FORMATMsgNoLookups=true 

b、修改配置:log4j2.formatMsgNoLookups=True 

c、系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS设置为true