CC7链
CC7 cc7与cc5大同小异,也是后面部分不变,变的只是入口的地方 CC7攻击链分析 思路分析 cc7这里的入口点使用了 Hashtable 这里我们简单分析一下,入口类是 Hashtable 的 readObject ,调用本身的 reconstitutionPut 方法,进入 reconsti…
CATEGORY / Java
篇研究记录,按发布时间倒序排列。使用分类与标签继续缩小技术范围。
CC7 cc7与cc5大同小异,也是后面部分不变,变的只是入口的地方 CC7攻击链分析 思路分析 cc7这里的入口点使用了 Hashtable 这里我们简单分析一下,入口类是 Hashtable 的 readObject ,调用本身的 reconstitutionPut 方法,进入 reconsti…
CC2链 CC2攻击链分析 add流程解析 之前这里没有搞明白,这次这里动态调试了一下,发现应该是差不多了,回来补一下 在这里add之后进行了下列操作,就是将add的元素,放入了queue数组中 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 p…
CC4链 之前讲的几条链子,都是在commons collections3.2.1版本之前的攻击链,cc4是在commons collections4.0版本中的一条链子 实际上,这条链子还是换汤不换药,只是中间执行的方式换了一下,后面还是命令执行和代码执行两种方式 CC4攻击链分析 调用trans…
CC3链补充 ysoserial中使用 TrAXFilter 类,来触发 newTransformer 方法,最后也可以成功进行类加载 这里我们也进行分析一下 CC3攻击链分析 调用newTransformer 我们来看 TrAXFilter 的构造函数,构造时需要传入一个templates ,然后…
CC3 CC3这条链子和前面的两条链有些不同,在这条链子中我们使用了 动态类加载 替换掉了 Runtime.exec ,由 命令执行 换为了 代码执行 类加载 我们来回顾一下动态类加载: ClassLoader中的 loadclass 调用 findClass , findCLass 调用 defi…
CC6链 tips:cc6这条链是不受jdk版本限制的 cc6的入口换成了 HashMap 的 readObject 方法,这条链实际是要调用 LazyMap的get方法 ,后面的部分就和ysoserial中的cc1后半链一样了 当时我们说URLDNS链中讲到了 HashMap 的 readObje…
CC1(ysoserial) ysoserial中的cc1和我们前面所说后半部分是一样的,这里就不细说 在ysoserial中的cc1是用LazyMap替换了 TransformedMap 现在使用 LazyMap 的 get 方法去触发 ChainedTransformer 的 transform…
CC1链 前置基础 Java反序列化原理: 接受任意对象,执行readObject方法 若有一个A的readObject方法,调用了O1.method1方法,则我们可以修改这个O1 且在O1.method1方法中,调用了O2.method2方法,则我们可以修改这个O2 …… 最后调用了危险方法(Ru…