Java 反序列化取经路

admin 2023年1月1日16:05:35评论25 views字数 3439阅读11分27秒阅读模式

Java 反序列化相关学习笔记、研究内容目录,持续更新ing...

(注:其实这种调用链非常复杂的漏洞调试文章,写出来基本没什么用,写的都是谁调用了谁,怎么想办法让这个 if else 走到这个调用点这一类的,如果只是为了构造 payload,那还好说,但是如果站在更高层面,如漏洞挖掘,0 day 防御这种目标的话,还是要了解思想,不能光看调用,而且如果你不自己动态调试,光看文章说的天花乱坠也是没用的,我在学的时候看其他人的文章也是一头雾水,调试过了才会理解构造的过程,不过依旧是一个学习记录的过程,当流水账般的日记发出来而已)

前置知识

ysoserial 补全计划

特别鸣谢:0range 师傅的相关博客

以下红色为入口点(kick-off),紫色为触发点(sink),其余为中间的调用链(chain)

其他反序列化

一些项目的了解和学习

ysuserial

魔改

目前已经完成魔改尝鲜版,支持了若干功能,可以在如下地址观看:

https://github.com/su18/ysoserial

已经打包好的 jar 包点击如下链接下载:

https://github.com/su18/ysoserial/releases/download/v0.1/ysuserial-0.1-su18-all.jar

一些总结

AnnotationInvocationHandler 作用

在反序列化 gadget 中多次遇到 AnnotationInvocationHandler 这个类,那么他在反序列化漏洞的利用中都可以起到什么样的作用呢?

一些以前没有注意过的点

  • Method 对象可以反序列化出去用
  • 之前提到反序列化,一直盯着类的 readObject 方法看,实际上一个类的相关漏洞 writeObject 方法也许更重要。
  • Class.forName() 可以指定 ClassLoader。

漏洞调试有感

弹计算器比找女朋友有意思多了。

FROM:素十八[su18]

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年1月1日16:05:35
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Java 反序列化取经路https://cn-sec.com/archives/1493653.html

发表评论

匿名网友 填写信息