QQ在线咨询

Apache Log4j 远程代码执行漏洞

个人博客:点击这里进入

一、漏洞描述

2021年12月9日夜里,互联网公布 Apache Log4j-2存在任意代码执行漏洞,该漏洞相关利用工具(PoC)在互联网公开。攻击者可直接构造恶意请求,触发远程代码执行漏洞。漏洞利用无需特殊配置。综合评估利用简单,利用要求少,影响范围较大。

二、影响范围

Apache Log4j2 是一款优秀的、基于 Java 语言开源的日志框架,使用极其广泛,现被大量的开源项目、开源组件引入使用,例如:Spring-Boot-strater-log4j2、Apache Struts2、Apache Solr、Apache Flink、Apache Druid、ElasticSearch、flume、dubbo、Redis、logstash、kafka 等。

Apache Log4j 2.x <= 2.14.1

三、自查方法

1、相关用户可根据Java jar解压后是否存在org/apache/logging/log4j相关路径结构,判断是否使用了存在漏洞的组件,若存在相关Java程序包,则很可能存在该漏洞。

2、若程序使用Maven打包,查看项目的pom.xml文件中是否存在下图所示的相关字段,若版本号为小于2.15.0,则存在该漏洞。

3、若程序使用gradle打包,可查看build.gradle编译配置文件,若在dependencies部分存在org.apache.logging.log4j相关字段,且版本号为小于2.15.0,则存在该漏洞。

四、修复及建议

1、尽快通过官网地址升级到最新版本

2、临时解决方案

若由于其他原因,暂时无法升级到最新版本的用户可根据以下方法缓解:

1、jvm参数 -Dlog4j2.formatMsgNoLookups=true
2、log4j2.formatMsgNoLookups=True
3、系统环境变量 FORMAT_MESSAGES_PATTERN_DISABLE_LOOKUPS 设置为true
 12月10日,出现绕过方式,临时解决方案进行更新
posted @ 2021-12-30 15:03  heardic  阅读(325)  评论(0编辑  收藏  举报