近日,我司监测到Apache Log4j 2项目官方公开了一个远程命令执行漏洞,利用代码已被公开。Apache Log4j 2是一个基于JAVA的日志记录工具,该工具重写了Log4j框架,并且引入了大量丰富的特性。所有JAVA开发系统中的调用Apache Log4j 2的都有可能受到影响。由于Apache Log4j 2存在Java JNDI注入漏洞,当程序将用户输入的数据进行日志,即可触发此漏洞,成功利用此漏洞可以在目标服务器上执行任意代码。
经验证,漏洞利用无需特殊配置,漏洞PoC已在网上公开并且广泛流传,默认配置即可进行利用,该漏洞影响范围广,利用难度低,请相关用户及时修复并加以防范,防止漏洞攻击发生。
影响版本
可能的受影响应用包括但不限于如下:
Spring-Boot-strater-log4j2
Apache Struts2
Apache Solr
Apache Flink
Apache Druid
ElasticSearch
flume
dubbo
Redis
logstash
kafka
漏洞级别
严重!!!!
用户需要排查JAVA应用是否引入log4j-api , log4j-core 两个jar,检查版本是否为2.x版本,并且版本小于2.15.0-rc2,若符合极可能会受到影响。
漏洞防护
官方解决方案
1、目前官方暂未发布正式更新版本,请更新对应临时补丁:https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2
2、若暂无法更新,可采取以下缓解措施:
(1)修改jvm参数:-Dlog4j2.formatMsgNoLookups=true
(2)修改配置:log4j2.formatMsgNoLookups=True
(3)将系统环境变量FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS设置为 true
3、用户可排查Java应用是否引入log4j-api,log4j-core两个jar,若存在使用,极大可能会受到影响。
万雍科技修复建议
1. 升级Apache Log4j2所有相关应用到最新的 log4j-2.15.0-rc2 版本。
2. 升级已知受影响的应用及组件,如srping-boot-strater-log4j2/Apache Solr/Apache Flink/Apache Druid。
3. jvm参数 -Dlog4j2.formatMsgNoLookups=true。
4. log4j2.formatMsgNoLookups=True。
5. 系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为true。
6. 禁止使用log4j的服务器外连出网。
7. 使用高版本jdk(如jdk11.0.1、8u191、7u201、6u211或更高版本),因为高版本JDK默认无法利用JNDI注入快采取安全措施阻止漏洞攻击。