2024-08-02 PriorityQueue CC2&CC4 CC java CC CC2,4都是Common Collections 4.0版本下的反序列化漏洞。pom依赖: 12345<dependency> <groupId>org.apache.commons</groupId&
2024-08-01 基于类加载的多路径TemplatesImpl CC3 CC java CC 上一文讲到类加载的底层原理 https://godownio.github.io/2024/07/31/java-lei-jia-zai-ji-shuang-qin-wei-pai/ 最后是defineClass加载类 尽管defineC
2024-08-01 一个搞笑的铸币CC3 CC java CC 今天没事想自己写个CC3类加载 结果为了顺利触发到TemplatesImpl#getTransletInstance的newInstance给我整急眼了,使劲改字段强行通过循环 刚才判定了,_auxClasses为transient,不能用
2024-07-20 CC重启之类URLDNS的CC6 CC java CC CC6在上一篇文章的分析中 https://godownio.github.io/2024/07/13/cc-chong-qi-zhi-ji-yu-dong-tai-dai-li-gou-zao-de-lazymap-ban-cc1/ 最后
2024-07-19 CC重启之URLDNS补课 CC java CC 在写CC6的时候,发现后半截是URLDNS的链,来重新构造一遍URLDNS。 他妈的,护网还被鸽了,面试是没挂过的,项目是没去过的。 URLDNSDNS解析漏洞触发点在InetAddress#getByName()能触发DNS解析 同样来
2024-07-13 CC重启之基于动态代理构造的LazyMap CC1及利用二次反序列化的修复 CC java CC 本文首发于https://www.freebuf.com/vuls/406123.html 前置知识: Java动态代理静态代理假设现在有这么一个需求: 创建了一个接口A,里面有display()函数、select()函数、add()函数
2024-07-10 CC重启之从零代码构造TransformedMap CC1 CC java CC 在此快速重温一遍Java反序列化知识 反射 Constructor类型存储getConstructor获取的有参或无参构造函数。其中getConstructor参数为需要获取的构造函数形参类型,如String.class,Class[].
2022-10-23 无数组TransformingComparator CC2 CCshiroCommonBeanutils java CC java_PriorityQueuejava.util.PriorityQueue 是一个优先队列(Queue),节点之间按照优先级大小排序成一棵树。其中PriorityQueue有自己的readObject反序列化入口。 反序列化链为:P
2022-10-07 java_TemplatesImpl在BCEL和shiro中的利用 BCELCCShiro java CC URLClassLoader可以从远程HTTP服务器上加载.class文件,从而执行任意代码。 JAVA Classloader字节码的本质是一个字节数组byte[] defineClass加载class或者jar文件,都会经过ClassL
2022-09-03 java TransformedMap&LazyMap CC java CC java反射首先,反射通常是通过class方法生成的class对象,所以可以使用比如runtime下没有而class下有的方法。比如序列化,runtime是生成对象是无法序列化的,但是class可以。所以一般都要通过class进行反序列化