网站首页

人工智能P2P分享搜索全网发布信息网站地图标签大全

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

Java反序列化回显方法

时间:2023-03-07 10:58

人气:

作者:admin

标签: 漏洞  JAVA  代码 

导读:同样修改yso中Gadgets要执行的java代码即可实现,通过将执行结果写入web目录下的静态文件再读取来实现。此法的缺点是当目标不存在可访问静态web目录便无法使用了且要获取web目录的绝对...

前言

在测试某反序列化漏洞,可以通过URLDNS链确定漏洞是否存在但在利用时遇到了困难,相关利用链可以执行系统命令却无法得到回显。

4102a3c8-bc72-11ed-bfe3-dac502259ad0.png

因此需要在此基础修改利用链达到命令回显得目的,下边记录的即是此次修改的过程。

Java反序列化回显方法

根据搜索到的资料给出的常见回显方法有以下几种:1、报错回显:要求服务器将报错信息打印到页面。2、写文件:把执行结果写入静态文件置于web目录下再读取结果。3、DNSLOG回显:通过DNSLOG将执行结果带出(未实现)。4、中间件回显:获取response对象,结果写入response对象中带出。5、.....

报错回显

此法要求服务器将报错信息打印出来,修改要反序列化执行的Java代码将结果写入异常再抛出即可实现。

4121bc68-bc72-11ed-bfe3-dac502259ad0.png

4159fe8e-bc72-11ed-bfe3-dac502259ad0.png

写文件回显

同样修改yso中Gadgets要执行的java代码即可实现,通过将执行结果写入web目录下的静态文件再读取来实现。此法的缺点是当目标不存在可访问静态web目录便无法使用了且要获取web目录的绝对路径,更适用于已知开发框架的反序列化漏洞利用。

41999d1e-bc72-11ed-bfe3-dac502259ad0.png

41d5c262-bc72-11ed-bfe3-dac502259ad0.png

DNSLOG

一般作为检测反序列化漏洞是否存在用,贴出URLDNS Gadget的验证过程。

41f02972-bc72-11ed-bfe3-dac502259ad0.png

42112866-bc72-11ed-bfe3-dac502259ad0.png

中间件回显

中间件回显是目前所有反序列化工具中最为通用的方法,相比于上述的方法中间件回显有不需目标出网、没有目录限制等优势。中间件回显的原理简单来说是在运行的中间件中获取request&response对象,通过request对象获取执行参数等后将执行结果写入response对象带出完成回显。已知目标中间件为tomcat,参考feihong师傅公开的tomcat全版本回显测试代码来修改yso代码实现利用。Tomcat回显代码:

42364024-bc72-11ed-bfe3-dac502259ad0.png

修改yso payload代码:

4277dd22-bc72-11ed-bfe3-dac502259ad0.png

修改yso Gadgets代码:

42a39052-bc72-11ed-bfe3-dac502259ad0.png

实现回显:

42ca906c-bc72-11ed-bfe3-dac502259ad0.png

总结

由于本菜鸡学习Java的路程不是很系统,在很多地方卡壳严重,还好最终实现了相关exp的编写。最后,感谢文中所用代码和知识的作者师傅们。

审核编辑 :李倩

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信