
Apache Log4j2 是一个基于 Java 的日志记录工具。该工具重写了 Log4j 框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。
在大多数情况下,开发者可能会将用户输入导致的错误信息写入日志中。攻击者利用此特性可通过该漏洞构造特殊的数据请求包,最终触发远程代码执行。由于该漏洞影响范围极广,建议广大用户及时排查相关漏洞,经过专家分析确认,目前市面有多款流行的系统都受影响。
该漏洞危害等级:严重
影响范围
经验证 2.15.0-rc1 版本存在绕过,实际受影响范围如下:
Apache Log4j 2.x < 2.15.0-rc2
影响判断方式:用户只需排查Java应用是否引入 log4j-api , log4j-core 两个jar。若存在应用使用,极大可能会受到影响。
已知影响组件
Apache Struts2
Apache Solr
Apache Flink
Apache Druid
ElasticSearch
flume
dubbo
Redis
logstash
kafka
漏洞排查
代码排查:查看 pom.xml 是否引入 org.apache.logging.log4j、org.apache.logging.log4j2

Linux:


Windows:


漏洞复现

修复建议
1、禁止使用 log4j 服务器外连,升级 idk 11.0.1 8u191 7u201 6u211 或更高版本。
2、升级至 log4j-2.15.0-rc2:
下载地址:https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0- rc2
3、紧急缓解措施:
(1) 修改 jvm 参数 -Dlog4j2.formatMsgNoLookups=true
(2) 修改配置 log4j2.formatMsgNoLookups=True
(3) 将系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为true