Skip to content

log4j2漏洞复现

  • 网络安全 date: 2022-01-03 00:00:00

漏洞详情

Apache Log4j是一个基于Java的日志记录组件,Apache Log4j2是Log4j的升级版本,通过重写Log4j引入了丰富的功能特性。该日志组件被广泛应用于业务系统开发,用以记录程序输入输出日志信息。2021年11月24日,阿里云安全团队向Apache官方报告了Apache Log4j2远程代码执行漏洞。由于Log4j2组件在处理程序日志记录时存在JNDI注入缺陷,未经授权的攻击者利用该漏洞,可向目标服务器发送精心构造的恶意数据,触发Log4j2组件解析缺陷,实现目标服务器的任意代码执行,获得目标服务器权限。

影响范围

2.x <=Log4j2<= 2.17

漏洞复现

首先在服务器上启动jndi服务用以加载恶意代码 log4j2漏洞复现 bp抓包后重放,并将jdni请求的地址换为上图的箭头所指 log4j2漏洞复现 服务器nc监听反弹shell的端口然后点击bp的发送即可接收到shell,flag在/tmp目录下 log4j2漏洞复现

修复建议

目前,Apache官方已发布新版本完成漏洞修复,建议及时升级至最新版本: https://github.com/apache/logging-log4j2/archive/refs/tags/rel/2.17.1.zip 建议同时采用如下临时措施进行漏洞防范: 1.添加jvm启动参数-Dlog4j2.formatMsgNoLookups=true 2.在应用classpath下添加log4j2.component.properties配置文件,文件内容为log4j2.formatMsgNoLookups=true; 3.JDK使用11.0.1、8u191、7u201、6u211及以上的高版本; 4.部署使用第三方防火墙产品例如waf、IPS等进行安全防护。

Comments