CATEGORY / Java

Java

8

篇研究记录,按发布时间倒序排列。使用分类与标签继续缩小技术范围。

41
Java #CC链

CC7链

CC7 cc7与cc5大同小异,也是后面部分不变,变的只是入口的地方 CC7攻击链分析 思路分析 cc7这里的入口点使用了 Hashtable 这里我们简单分析一下,入口类是 Hashtable 的 readObject ,调用本身的 reconstitutionPut 方法,进入 reconsti…

12 MIN READ
42
Java #CC链

CC2链

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…

14 MIN READ
43
Java #CC链

CC4链

CC4链 之前讲的几条链子,都是在commons collections3.2.1版本之前的攻击链,cc4是在commons collections4.0版本中的一条链子 实际上,这条链子还是换汤不换药,只是中间执行的方式换了一下,后面还是命令执行和代码执行两种方式 CC4攻击链分析 调用trans…

14 MIN READ
44
Java #CC链

CC3链补充

CC3链补充 ysoserial中使用 TrAXFilter 类,来触发 newTransformer 方法,最后也可以成功进行类加载 这里我们也进行分析一下 CC3攻击链分析 调用newTransformer 我们来看 TrAXFilter 的构造函数,构造时需要传入一个templates ,然后…

9 MIN READ
45
Java #CC链

CC3链

CC3 CC3这条链子和前面的两条链有些不同,在这条链子中我们使用了 动态类加载 替换掉了 Runtime.exec ,由 命令执行 换为了 代码执行 类加载 我们来回顾一下动态类加载: ClassLoader中的 loadclass 调用 findClass , findCLass 调用 defi…

19 MIN READ
46
Java #CC链

CC6链

CC6链 tips:cc6这条链是不受jdk版本限制的 cc6的入口换成了 HashMap 的 readObject 方法,这条链实际是要调用 LazyMap的get方法 ,后面的部分就和ysoserial中的cc1后半链一样了 当时我们说URLDNS链中讲到了 HashMap 的 readObje…

13 MIN READ
47
Java #CC链

CC1链补充

CC1(ysoserial) ysoserial中的cc1和我们前面所说后半部分是一样的,这里就不细说 在ysoserial中的cc1是用LazyMap替换了 TransformedMap 现在使用 LazyMap 的 get 方法去触发 ChainedTransformer 的 transform…

13 MIN READ
48
Java #CC链

CC1链

CC1链 前置基础 Java反序列化原理: 接受任意对象,执行readObject方法 若有一个A的readObject方法,调用了O1.method1方法,则我们可以修改这个O1 且在O1.method1方法中,调用了O2.method2方法,则我们可以修改这个O2 …… 最后调用了危险方法(Ru…

30 MIN READ