
JAVA反序列化
文章平均质量分 96
Neolock
这个作者很懒,什么都没留下…
展开
-
JAVA反序列化深入学习(十五):Hibernate2
Hibernate1 是触发 getter 方法,除了 TemplatesImpl 实例化恶意类字节码,还可以通过 JdbcRowSetImpl 触发恶意 JNDI 查询,Hibernate2 就是这种方式原创 2025-04-15 02:06:58 · 914 阅读 · 0 评论 -
JAVA反序列化深入学习(十四):Hibernate1
Hibernate1 依旧是利用 TemplatesImpl 这个类,找寻 _outputProperties 的 getter 方法的调用链原创 2025-04-11 01:51:24 · 1188 阅读 · 0 评论 -
JAVA反序列化深入学习(十三):Spring2
Spring2 在 Spring1 的触发链上有所变换:替换了 spring-beans 的 ObjectFactoryDelegatingInvocationHandler使用了 spring-aop 的 JdkDynamicAopProxy ,并完成了后续触发 TemplatesImpl 的流程简而言之,换了一个chain,而kick-off和sink都没有变动原创 2025-04-06 19:47:47 · 943 阅读 · 0 评论 -
JAVA反序列化深入学习(十二):Groovy1
Groovy 核心包中的 Gadget原创 2025-04-05 02:43:26 · 1008 阅读 · 0 评论 -
JAVA反序列化深入学习(十一):Spring1
springframework 是spring 里面的一个基础开源框架,主要用于javaee的企业开发springframework也存在反序列化的漏洞原创 2025-03-31 20:03:29 · 1140 阅读 · 0 评论 -
JAVA反序列化深入学习(十):CommonsBeanutils1
由 TransformingComparator 触发 ChainedTransformer ,从而实例化 TemplatesImpl那能不能找到一个 Comparator,绕过中间复杂过程,直接实例化 TemplatesImpl 呢?于是有了 CommonsBeanutils 这条链原创 2025-03-30 09:24:44 · 1054 阅读 · 0 评论 -
JAVA反序列化深入学习(九):CommonsCollections7与CC链总结
CC7 依旧是寻找 LazyMap 的触发点CC6使用了 HashSet而CC6使用了 Hashtable原创 2025-03-29 21:32:23 · 1207 阅读 · 0 评论 -
JAVA反序列化深入学习(八):CommonsCollections6
与CC5相似:在 CC5 中使用了 TiedMapEntry#toString 来触发 LazyMap#get在 CC6 中是通过 TiedMapEntry#hashCode 来触发 LazyMap#get之前看到了 hashcode 方法也会调用 getValue() 方法然后调用到其中 map 的 get 方法触发 LazyMap,那重点就在于如何在反序列化时触发 TiedMapEntry 的 hashCode 方法了原创 2025-03-29 13:29:13 · 936 阅读 · 0 评论 -
JAVA反序列化深入学习(七):CommonsCollections5
CC5跟之前几个CC链有点类似依旧是 LazyMap 加 ChainedTransformer 的触发模式但不再使用 AnnotationInvocationHandler 的动态代理来触发 LazyMap 的 get原创 2025-03-28 16:43:04 · 987 阅读 · 0 评论 -
JAVA反序列化深入学习(六):CommonsCollections4
CC4 是 CC2 的一个变种:用 PriorityQueue 的 TransformingComparator 触发 ChainedTransformer再利用 InstantiateTransformer 实例化 TemplatesImpl排列组合了属于是原创 2025-03-28 13:11:55 · 972 阅读 · 0 评论 -
JAVA反序列化深入学习(五):CommonsCollections3
CC3 官方描述为 CC1 的变种,其中能看到 CC1 和 CC2 的部分影子,但是部分技术细节并不相同原创 2025-03-27 23:59:27 · 646 阅读 · 0 评论 -
JAVA反序列化深入学习(四):CommonsCollections2
CommonsCollections2链的深度分析原创 2025-03-25 09:00:00 · 1221 阅读 · 0 评论 -
JAVA反序列化深入学习(三):CommonsCollections1
Apache Commons Collections 是一个扩展了 Java 标准库里的 Collection 结构的第三方基础库,它提供了很多强有力的数据结构类型并实现了各种集合工具类。作为 Apache 开源项目的重要组件,被广泛运用于各种 Java 应用的开发。原创 2025-03-24 20:18:22 · 1273 阅读 · 0 评论 -
JAVA反序列化深入学习(二):URLDNS
URLDNS 是适合新手分析的反序列化链,只依赖原生类,没有 jdk 版本限制,也被 ysoserial 涵盖在其中。它不会执行命令,只会触发 DNS 解析,因此通常用来探测是否存在反序列化漏洞。原创 2025-03-23 10:07:13 · 689 阅读 · 0 评论 -
JAVA反序列化深入学习(一):前置知识与基本原理
为什么要学习JAVA反序列化呢?借用su18师傅的一段话:其实这种调用链非常复杂的漏洞调试文章,写出来基本没什么用,写的都是谁调用了谁,怎么想办法让这个 if else 走到这个调用点这一类的如果只是为了构造 payload,那还好说,但是如果站在更高层面,如漏洞挖掘,0 day 防御这种目标的话,还是要了解思想,不能光看调用,而且如果你不自己动态调试,光看文章说的天花乱坠也是没用的,我在学的时候看其他人的文章也是一头雾水,调试过了才会理解构造的过程。原创 2025-03-23 09:44:44 · 1038 阅读 · 0 评论