1、产品简介
java.rmi.registry是java语言的一个包,提供 RMI 注册表的一个类和两个接口。注册表是一个将名称映射到远程对象的远程对象。服务器使用注册表注册其远程对象,以便于查找这些对象。当某个对象希望在远程对象上调用某个方法时,则必须首先使用其名称查找该远程对象。注册表将为调用对象返回一个对远程对象的引用,使用这种方法可以调用远程方法。
2、漏洞概述
Java Remote Method Invocation 用于在Java中进行远程调用。RMI存在远程bind的功能(虽然大多数情况不允许远程bind),在bind过程中,伪造Registry接收到的序列化数据(实现了Remote接口或动态代理了实现了Remote接口的对象),使Registry在对数据进行反序列化时触发相应的利用链(环境用的是commons-collections:3.2.1)。
3、影响范围
<=jdk8u232_b09
4、复现环境
vulfocus在线靶场
5、利用流程
1、开启靶场环境,利用ysoserial反序列化工具进行复现
工具地址:GitHub - wh1t3p1g/ysoserial: forked from frohoff/ysoserial and added my ow