java安全知识之RMI机制

上一篇文章了解了远程动态代理机制,了解了创建动态代理对象的过程。但是,实际上在java脆弱性的远程利用过程中,服务层面并不意味着让客户实现远程代理攻击,而是利用java的远程方式协商。因此,让我们了解java的RMI远程机制,看看如何利用它来攻击远程目标。


RMI机制概念。JavaRMI全称javaRemotePrimhodInvocation(java远程方式载入),是java编程语言中实现远程载入的应用程序编程接口。存储在java.FRM证书i包中,使用其方式载入对象时,必须实现Remote远程接口,使某java虚拟机的对象载入另一个Java虚拟机的对象。两台虚拟机可以在同一台电脑上运行不同的流程,也可以是网络上不同的电脑。


RMI基本名词,从RMI设计的角度来看,基本上分为三层结构模式来实现RMI,分别是RMI服务终端、RMI客户终端和RMI注册中心。

手机客户端:存根/桩(Stub):远程对象在手机客户端的代理,远程引用层:分析和执行远程引用协议,传输层:发送载入、传送远程方式参数、接收远程方式执行结果。


服务方:服务方:框架:载入手机客户端传送的方式参数,载入服务器层面的实际对象方式,接收方式执行后的传参的远程引用层:处理远程引用后,向框架传送远程方式载入传输层:监视手机客户端的入住连接,接收并传送到远程引用层。注册表文件:以URL方式注册远程对象,并向手机客户端回复远程对象引用。同时,在使用RMI远程方式载入时,需要事先定义远程接口,继承java.FRM证书i.Remote接口,但该接口仅为RMI标志接口,本身并不意味着使用任何方式,可以载入RMIjava虚拟机。与此同时,由于RMI通信的本质也基于网络传输,RemoteExceptor也应发生异常。

分享: