Java反序列化:CC2利用链深度解析
commons-collections 4.0Apache Commons Collections 4.0 是官方针对旧版(commons-collections)的结构性缺陷和 API 设计问题推出的独立进化版本。它常常被作为一个新的包,且与旧版commons-collections的命名空间并不冲突,可以共存在同一个项目中。 环境搭建 jdk 8u71 commons-collections-4.0 具体搭建流程可以看我之前文章。 注意commons-collections版本为4.0,jdk不影响,maven配置依赖时pom.xml写入的是: 12345<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> ...
Java反序列化:CC3利用链深度解析
环境搭建 jdk 8u65 Commons Collection 3.2.1 jdk下载地址:https://www.oracle.com/cn/java/technologies/javase/javase8-archive-downloads.html#license-lightbox 由于该链子是在CC1或者CC6的基础上稍稍进行了改变,所以jdk是不受限制的,只不过看是在哪个链子上改变而已。具体环境搭建可以看我之前的文章 前言由于CC3是在CC1或CC6的基础上进行改变的,不熟悉的师傅可看我前两篇文章: Java 反序列化:CC1 利用链深度解析 Java 反序列化:CC6 利用链深度解析 同时该链子需要类加载机制及如何动态加载字节码的基础,可参考: Java类加载机制 java动态加载字节码 CC3分析TemplatesImpl类构造TemplatesImpl动态加载字节码我们先简单回顾一下TemplatesImpl是如何加载字节码的。 Java程序编译和执行流程: 1.java 源码 → javac 编译 → .class 字节码 → JVM...
Java反序列化:CC1利用链深度解析
Commons ClollectionsCommons Collection是Apache软件基金会的一个开源项目,它为 Java 的集合框架提供了一系列额外的集合类和算法。这些类和算法在 Java 的标准集合框架的基础上进行了扩展,使得开发者在处理集合数据时可以更加灵活和高效。Commons Collections 提供了各种强大的集合接口和实现,如有序集合、队列、堆等,以及一些高级算法,如过滤、转换等,并广泛运用于Java开发中。 环境搭建下载配置jdk-8u65下载地址:https://www.oracle.com/cn/java/technologies/javase/javase8-archive-downloads.html#license-lightbox 下载好后直接双击安装,因为后期会分析其他cc链,其对应jdk的版本也不同,所以尽量将下载的jdk放在一个目录下。 然后将下载后的jdk配置到IDEA里: 1左上角file->Project...
RCE-labs练习
靶场地址及官方wp:https://github.com/ProbiusOfficial/RCE-labs?tab=readme-ov-file 本文用的是CTF++平台进行复现的 level2考察代码执行的常见函数 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 <?php include ("get_flag.php");global $flag;session_start(); // 开启 sessionfunction hello_ctf($function, $content){ global $flag; $code = $function . "(" . $content . ");"; echo "Your Code: $code <br>"; eval($code);}function...
URLDNS链分析
概述HashMap实现了Serializable接口,可对HashMap对象进行反序列化操作 URLDNS是ysoserial中利用链的一个名字,因为URLDNS...
SQL注入总结(超详细)
MySQL环境配置 定义MySQL为关系型数据库(Relational Database Management System), 这种所谓的”关系型”可以理解为”表格”的概念, 一个关系型数据库由一个或数个表格组成, 如图所示的一个表格: 表头(header): 每一列的名称。 列(col): 具有相同数据类型的数据的集合。 行(row): 每一行用来描述某条记录的具体信息。 值(value): 行的具体信息, 每个值必须与该列的数据类型相同。 键(key): 键的值在当前列中具有唯一性。 数据类型数值类型 类型 大小 范围(有符号) 范围(无符号) 用途 TINYINT 1 Bytes (-128,127) (0,255) 小整数值 SMALLINT 2 Bytes (-32 768,32 767) (0,65 535) 大整数值 MEDIUMINT 3 Bytes (-8 388 608,8 388 607) (0,16 777 215) 大整数值 INT或INTEGER 4 Bytes (-2 147 483 648,2 147...










