Apache Log4j2 RCE 命令执行漏洞预警及修复方案
漏洞名称:Apache Log4j2远程代码执行漏洞
组件名称:Apache Log4j2
截止2021年12⽉10⽇,受影响的Apache log4j2版本:2.0≤Apache Log4j<=2.15.0-rc1
漏洞类型:远程代码执行
综合评价:
<利用难度>:容易,无需授权即可远程代码执行。
<威胁等级>:高危,能造成远程代码执行。
01 漏洞详情
Apache Log4j2是一个基于Java的日志记录工具。该工具重写了Log4j框架,并且引入了大量丰富的特性。该日志框架被大量用于业务系统开发,用来记录日志信息。
由于Apache Log4j2某些功能存在递归解析功能,攻击者可直接构造恶意请求,⽆需进⾏特殊配置,即可触发远程代码执⾏。
02 影响范围
Apache Log4j2广泛地应用在中间件、开发框架、Web应用中。漏洞危害性高,涉及用户量较大,导致漏洞影响力巨大。
截止2021年12⽉10日,受影响的Apache log4j2版本:2.0 <= Apache log4j2 <= 2.15.0-rc1
受影响的Java框架:
03 修复建议
1、项目中直接使用Apache Log4j2
升级Apache Log4j2所有相关应用到最新的log4j-2.15.0-rc2版本,地址 :
https://github.com/apache/logging-log4j2/releases/tag/log4j-2.15.0-rc2
- Apache Maven 版本
修改pom.xml
<dependencies> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.15.0-rc2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.15.0-rc2</version> </dependency> </dependencies>
- Gradle 版本
修改build.gradle
dependencies { compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.15.0-rc2' compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.15.0-rc2' }
2、框架⼆次加载 Apache Log4j2
截止目前,第三方框架中使⽤Apache Log4j2的,⽐如srping-boot、Apache Struts2等,暂未发布最新修复版本。
只能使用临时方案进行修复。
①在jvm启动参数中添加-Dlog4j2.formatMsgNoLookups=true
④部署第三方防火墙产品。
04 应急支持
如需应急支持,请拨打客服电话。
应急响应联系电话:400-8818-293。