RMI反序列漏洞复现-——手把手光速复现,工具超全

2023-11-22 21:20

本文主要是介绍RMI反序列漏洞复现-——手把手光速复现,工具超全,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

RMI反序列漏洞复现-手把手光速复现,工具超全

    • 一、靶机部署:
    • 二、本机怎样查看是不是可以回显?
    • 三、attackRMI利用

RMI是REMOTE METHOD INVOCATION的简称,是J2SE的一部分,能够让程序员开发出基于JAVA的分布式应用。一个RMI对象是一个远程JAVA对象,可以从另一个JAVA虚拟机上(甚至跨过网络)调用它的方法,可以像调用本地JAVA对象的方法一样调用远程对象的方法,使分布在不同的JVM中的对象的外表和行为都像本地对象一样。
  对于任何一个以对象为参数的RMI接口,你都可以发一个自己构建的对象,迫使服务器端将这个对象按任何一个存在于class path中的可序列化类来反序列化。
  RMI的传输100%基于反序列化。

所有复现的工具打包好了,看官给点小小银两,即可下载
(tips:某宝花几毛钱就可以秒下载 —嘿嘿绝不吃亏)
//download.csdn.net/download/weixin_37771454/12267674

一、靶机部署:

将rmiserver.jar复制到靶机桌面;
要求靶机为Linux且安装的Java版本为1.6,因为在1.8版本的JRE中该反序列漏洞已被修复***

Java 1.6.0 for Linux 下载链接,我的是64位的(已经装好jdk1.6的跳过):

链接:https://pan.baidu.com/s/1RIEbEFMAVsFc377n-txkpg 提取码:676z

右键打开命令行
vi /etc/hosts 在第二行添加靶机的外网地址(ifconfig查看),wq保存
然后cd到桌面
执行(让该rmi服务运行在靶机的外网端口6600)

java -jar rmiserver.jar 6600 rmi

提示service start!
在这里插入图片描述
说明服务成功启动

二、本机怎样查看是不是可以回显?

先在Windows ping一下靶机IP,看看是否ping通
然后把rmiclient.jar复制到Windows桌面
打开命令行cd到桌面目录
执行

java -jar ./rmiclient.jar 靶机IP 6600 rmi MESSAGE

执行后可以在靶机看到MESSAGE字样了
在这里插入图片描述
复现到这里基本就完成了,接下来就是工具的利用

三、attackRMI利用

Windows右键attackRMI.jar打开
输入靶机IP和端口6600 点击连接
连接成功后
输入ifconfig执行
在这里插入图片描述
成功回显 可以看到了靶机的ifconfig信息

四、想了解原理的可以看看这篇文章

https://blog.csdn.net/LeeHDsniper/article/details/71599504

这篇关于RMI反序列漏洞复现-——手把手光速复现,工具超全的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Java中有什么工具可以进行代码反编译详解

《Java中有什么工具可以进行代码反编译详解》:本文主要介绍Java中有什么工具可以进行代码反编译的相关资,料,包括JD-GUI、CFR、Procyon、Fernflower、Javap、Byte... 目录1.JD-GUI2.CFR3.Procyon Decompiler4.Fernflower5.Jav

使用Python创建一个能够筛选文件的PDF合并工具

《使用Python创建一个能够筛选文件的PDF合并工具》这篇文章主要为大家详细介绍了如何使用Python创建一个能够筛选文件的PDF合并工具,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录背景主要功能全部代码代码解析1. 初始化 wx.Frame 窗口2. 创建工具栏3. 创建布局和界面控件4

Docker部署Jenkins持续集成(CI)工具的实现

《Docker部署Jenkins持续集成(CI)工具的实现》Jenkins是一个流行的开源自动化工具,广泛应用于持续集成(CI)和持续交付(CD)的环境中,本文介绍了使用Docker部署Jenkins... 目录前言一、准备工作二、设置变量和目录结构三、配置 docker 权限和网络四、启动 Jenkins

MobaXterm远程登录工具功能与应用小结

《MobaXterm远程登录工具功能与应用小结》MobaXterm是一款功能强大的远程终端软件,主要支持SSH登录,拥有多种远程协议,实现跨平台访问,它包括多会话管理、本地命令行执行、图形化界面集成和... 目录1. 远程终端软件概述1.1 远程终端软件的定义与用途1.2 远程终端软件的关键特性2. 支持的

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

关于最长递增子序列问题概述

《关于最长递增子序列问题概述》本文详细介绍了最长递增子序列问题的定义及两种优化解法:贪心+二分查找和动态规划+状态压缩,贪心+二分查找时间复杂度为O(nlogn),通过维护一个有序的“尾巴”数组来高效... 一、最长递增子序列问题概述1. 问题定义给定一个整数序列,例如 nums = [10, 9, 2

Java数字转换工具类NumberUtil的使用

《Java数字转换工具类NumberUtil的使用》NumberUtil是一个功能强大的Java工具类,用于处理数字的各种操作,包括数值运算、格式化、随机数生成和数值判断,下面就来介绍一下Number... 目录一、NumberUtil类概述二、主要功能介绍1. 数值运算2. 格式化3. 数值判断4. 随机

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

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

Java中基于注解的代码生成工具MapStruct映射使用详解

《Java中基于注解的代码生成工具MapStruct映射使用详解》MapStruct作为一个基于注解的代码生成工具,为我们提供了一种更加优雅、高效的解决方案,本文主要为大家介绍了它的具体使用,感兴趣... 目录介绍优缺点优点缺点核心注解及详细使用语法说明@Mapper@Mapping@Mappings@Co

使用Python实现图片和base64转换工具

《使用Python实现图片和base64转换工具》这篇文章主要为大家详细介绍了如何使用Python中的base64模块编写一个工具,可以实现图片和Base64编码之间的转换,感兴趣的小伙伴可以了解下... 简介使用python的base64模块来实现图片和Base64编码之间的转换。可以将图片转换为Bas