RMI反序列化原理及实践如何学习?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2069个文字,预计阅读时间需要9分钟。
RMI(Remote Method Invocation,远程方法调用)简介,远程方法调用技术,本质上就是本地Java虚拟机调用其他Java虚拟机的对象方法。两个虚拟机可以运行在同一台计算机的不同进程中,也可以运行在不同的计算机上。
RMI学习 1、RMI简介RMI(Remote Method Invocation),远程方法调用方法,其实就是本地java虚拟机要调用其他java虚拟机的方法,两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。
如果复现过fastjson漏洞就知道我们的payload经常会携带rmi、jndi等协议。而且对于jdk的版本有要求
基于RMI利用的JDK版本<=6u141、7u131、8u121
基于LDAP利用的JDK版本<=6u211、7u201、8u191
RMI依赖的通信协议为JRMP(Java Remote Message Protocol ,Java 远程消息交换协议),该协议为Java定制,要求服务端与客户端都为Java编写。这个协议就像HTTP协议一样,规定了客户端和服务端通信要满足的规范。
2、RMI的组成部分Client-客户端:客户端调用服务端的方法
Server-服务端:远程调用方法对象的提供者
Registry-注册中心:RMI Server可以在上⾯注册⼀个Name到对象的绑定关系;RMI Client通过Name向RMI Registry查询,得到这个绑定关系,然后再连接RMI Server,最后也是代码真正执行的地方。
本文共计2069个文字,预计阅读时间需要9分钟。
RMI(Remote Method Invocation,远程方法调用)简介,远程方法调用技术,本质上就是本地Java虚拟机调用其他Java虚拟机的对象方法。两个虚拟机可以运行在同一台计算机的不同进程中,也可以运行在不同的计算机上。
RMI学习 1、RMI简介RMI(Remote Method Invocation),远程方法调用方法,其实就是本地java虚拟机要调用其他java虚拟机的方法,两个虚拟机可以是运行在相同计算机上的不同进程中,也可以是运行在网络上的不同计算机中。
如果复现过fastjson漏洞就知道我们的payload经常会携带rmi、jndi等协议。而且对于jdk的版本有要求
基于RMI利用的JDK版本<=6u141、7u131、8u121
基于LDAP利用的JDK版本<=6u211、7u201、8u191
RMI依赖的通信协议为JRMP(Java Remote Message Protocol ,Java 远程消息交换协议),该协议为Java定制,要求服务端与客户端都为Java编写。这个协议就像HTTP协议一样,规定了客户端和服务端通信要满足的规范。
2、RMI的组成部分Client-客户端:客户端调用服务端的方法
Server-服务端:远程调用方法对象的提供者
Registry-注册中心:RMI Server可以在上⾯注册⼀个Name到对象的绑定关系;RMI Client通过Name向RMI Registry查询,得到这个绑定关系,然后再连接RMI Server,最后也是代码真正执行的地方。

