一、马绍尔群岛简介
RMI是远程方法调用的缩写,是J2SE的一部分,它使程序员能够基于Java开发分布式应用程序。一个RMI对象是一个远程Java对象,它的方法可以从另一个Java虚拟机调用,远程对象的方法可以像本地Java对象一样被调用,这样分布在不同JVM中的对象看起来和行为都像本地对象。有关更多开发信息,请参见
http://www.blogjava.net/zhenyu33154/articles/320245.html
而RMI使用Java序列化和反序列化来调用远程对象。
二、Java反序列化漏洞
Java序列化就是把我们的Java对象打包成静态二进制格式,适合存储在磁盘上或者通过网络传输。但是,当系统环境中存在易受攻击的jar包时,将导致远程命令执行。详见http://www.angelwhu.com/blog/? .
第三,典型的漏洞写作
项目的功能是调用RMI打印欢迎信息。目录结构如下:
说明我们的RMI服务是可以正常使用的。
四.风险分析
嗯,RMI真的很方便。调用远程服务就像使用本地对象一样。可悲的是,便利的同时也带来了潜在的危害。
让我们看看本地监听端口:
那么,如果此时环境中恰好有带有反序列化漏洞的jar包,那不就是直接远程执行命令吗?
为了验证这一点,我在项目中添加了公共资源集合3.1.jar
然后我用ysoserial在同一个网段的其他计算机上执行命令:Java-cpysserial-0 . 0 . 4-all . jar ysserial . exploit . rmregistry exploit 8.8.8.8 6600公地集合1“calc”
注意:8.8.8.8是我的外网ip,ysserial-0 . 0 . 4-all . jar下载地址
https://github.com/frohoff/ysoserial/archive/v0.0.4.
2.升级本地jar包。
目前网上发布的易损jar包版本可以参考https://github . com/frohoff/ysserial/tree/master/src/main/Java/ysserial/payloads。
参加考试
https://github.com/frohoff/ysoserial
http://blog.csdn.net/sun_boyhappy/article/details/5655014
http://www.blogjava.net/zhenyu33154/articles/320245.html
http://www.angelwhu.com/blog/? p = 394
提交精彩原创文章有惊喜!
欢迎投稿!
VSRC欢迎提交优秀的原创文章。优秀的文章一旦被采纳发布,就会被赠送礼品。我们为您准备的丰富奖品包括但不限于:MacbookAir、VSRC定制雨伞、VSRC定制杯子、VSRC精致枕头!
我们倾听您的宝贵建议
不知道,大家都喜欢看什么样的信息安全文章?
我不知道。你希望我们更新哪些话题?
从现在开始,只要你有什么想法或者建议,请直接回复这条微信官方账号消息!
拥有精彩信息交互的热情用户将有机会获得VSRC颁发的精美奖品!
同时我们会根据大家的反馈建议选择热点话题,进行原创发布!
1.《rmi RMI 远程命令执行分析》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《rmi RMI 远程命令执行分析》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/1675561.html