
审计
文章平均质量分 97
dayouziei
去尝试一直没做的事
展开
-
java原生反序列化利用链7u21的学习
在之前的反序列化利用链学习中,前提条件都用到了第三方库,那么如果不利用第三方类库,是否能进行反序列化利用链呢?答案是可以的,那就是 JDK7u21, 但是它适用于 java 7u21及之前的版本。所以使用这条利用链,需要将项目版本设置为 7u21。原创 2024-12-02 21:00:00 · 1016 阅读 · 0 评论 -
CommonsBeanutils与Shiro发序列化利用的学习
前面的学习中,过了一遍cc1-cc7的利用链,在CC2的利用链中,学习了 java.util.PriorityQueue,它在Java中是一个优先队列,队列中每一个元素都有自己的优先级。在反序列化这个对象时,为了保证队列顺序,会进行重排序的操作,而排序会进行比较,进而执行 java.util.Comparator 接口的 compare()方法。那么,后续我们可以继续学习下其他利用 java.util.Comparator 对象。原创 2024-11-20 19:30:00 · 1054 阅读 · 0 评论 -
Java反序列化之CommonsCollections4、5、7 链的学习
前面的文章中,基本把CC链的关键部分学习的差不多了,利用过程也是比较清晰了,接下来把 CommonsCollections 4、5、7 利用链学习下,扩展下思路。原创 2024-11-13 22:30:00 · 667 阅读 · 0 评论 -
Java反序列化之CommonsCollections2链的学习
Apache Commons Collections 是一个著名的辅助开发库,包含了一些Java中没有的数据结构和辅助方法,不过随着Java 9 以后的版本中原生库功能的丰富,以及反序列化漏洞的影响,它也在逐渐被升级或替代。可⻅,groupId和artifactId都变了。前者是Commons Collections⽼的版本包,当时版本号是3.2.1;后 者是官⽅在2013年推出的4版本,当时版本号是4.0。原创 2024-11-11 22:00:00 · 952 阅读 · 0 评论 -
TemplatesImpl 在Shiro中的利用链学习1
在前面的学习中,我们学习了CC1、CC6链,其中CC1链受限于Java8u71版本,而CC6则是通杀的利用链;后来又将 TemplateImpl 融入到 CommonsCollections 利用链中,绕过了不能使用的限制,转用构造了CC3利用链,一样可以执行任意Java字节码;同时通过 TemplatesImpl 构造的利用链,理论上可以执行任意java代码,这是一种非常通用的代码执行漏洞,不受到对于链的限制,特别是内存马逐渐流行以后,执行任意 java代码的需求就更加浓烈了。原创 2024-11-11 19:30:00 · 1468 阅读 · 0 评论 -
java反序列化学习之CommonCollections3利用链的学习
在前文中,我们学习了Java的类加载过程,类加载器以及Java中加载字节码的一些方法,其中介绍了TemplatesImpl,TemplatesImpl是一个可以加载字节码的类,通过调用其newTransformer()方法,即可执行这段字节码的类构造器。那么,在反序列化的漏洞,能否利用这个特性执行任意代码呢?原创 2024-11-08 19:00:00 · 693 阅读 · 0 评论 -
java的类加载机制的学习
简单说Java字节码就是 .class 后缀的文件,里面存在Java虚拟机执行的命令。由于Java是一门跨平台的编译型语言,所以可以适用于不同的平台,不同CPU的计算机,开发者只需要将自己的代码编译一次,就可以运行在不同平台的JVM中。甚至,开发者可以用类似Scala、Kotlin这样的语言编写代码,只要你的编译器能够将代码编译成 .class 文件,都可以在JVM虚拟机中运行。当然也可以理解的更广义一些--- 所有能够恢复成一个类并在JVM虚拟机里加载的字节序列。原创 2024-11-07 22:37:36 · 895 阅读 · 0 评论 -
java反序列化之CommonCollections6利⽤链的学习
前文学习CC1链和URLDNS链的学习,同时学习过程中知道cc1受jdk版本的限制,故而进一步分析cc6链的利用过程,这个利用链不受jdk版本的限制,只要commons collections小于等于3.2.1,都存在这个漏洞。原创 2024-10-10 11:33:41 · 1021 阅读 · 0 评论 -
java反序列化之CommonCollections1利⽤链的学习
本文主要记录自己的学习记录,主要摘自P神的文章,讲解CC1链的利用过程。原创 2024-08-23 17:57:09 · 908 阅读 · 0 评论 -
java学习之zip炸弹攻击
Zip炸弹是一种特殊类型的Zip文件,它包含了大量的无用数据。Zip文件格式允许使用压缩算法来减小文件的大小,但是如果Zip文件中的某些内容被重复压缩,就会导致文件大小急剧增加。Zip炸弹利用这个特性,将一些无用的数据多次压缩到一个Zip文件中,从而生成一个极其庞大的文件。当服务器尝试解压缩这个Zip文件时,它需要解压缩所有的内容。由于Zip炸弹中包含了大量的重复数据,这可能会导致服务器耗尽所有的内存和CPU资源,从而导致服务器崩溃或拒绝服务攻击。原创 2024-05-13 10:45:53 · 2590 阅读 · 0 评论