最近看到一些师傅在做一个CTF的时候找到了Hessian的JDK原生反序列化的利用链,简单了解Hessian的反序列化原理,发现其只需要通过调用SerializerFactory
的setAllowNonSerializable(true);
函数关闭Serializable派生类检查,就可以使其序列化、反序列化任何没有继承Serializable的类,这点相较于原生反序列化稍微有点特殊。
在一个师傅的文章里找到了一条JDK原生的可以invoke任意函数,或实例化任意类的gadget:
UIDefaults.get UIDefaults.getFromHashTable UIDefaults$LazyValue.createValue SwingLazyValue.createValue继续阅读“探寻Hessian JDK原生反序列化不出网的任意代码执行利用链”