FastJson反序列化
FastJson反序列化 基础 官方源码: https://github.com/alibaba/fastjson 使用手册: https://www.w3cschool.cn/fastjson/ Fastjson是一个Java库,可用于将Java对象转换为它们的JSON表示。它还可以用于将JSON字符串转换为等效的Java对象。Fastjson可以处理任意Java对象,包括没有源代码的预先存在的对象。 ...
FastJson反序列化 基础 官方源码: https://github.com/alibaba/fastjson 使用手册: https://www.w3cschool.cn/fastjson/ Fastjson是一个Java库,可用于将Java对象转换为它们的JSON表示。它还可以用于将JSON字符串转换为等效的Java对象。Fastjson可以处理任意Java对象,包括没有源代码的预先存在的对象。 ...
Shiro反序列化 Shiro反序列化 参考文章: Shiro反序列化漏洞笔记一(原理篇) 环境搭建 直接从github上clone代码到本地。 plain 1 2 3 git clone https://github.com/apache/shiro.git cd shiro git checkout shiro-root-1.2.4 修改 pml.xml(路径为 \shiro\samples\web\pom.xml) ...
一、JNDI 简介 JNDI(Java Naming and Directory Interface,Java命名和目录接口) 是一个应用程序设计的 API,一种标准的 Java 命名系统接口。JNDI 提供统一的客户端 API,通过不同的访问提供者接口JNDI服务供应接口(SPI)的实现,由管理者将 JNDI API 映射为特定的命名服务和目录系统,使得 Java 应用程序可以和这些命名服务和目录服务之间进行交互。 ...
1、RMI是什么 Java RMI用于不同虚拟机之间的通信,这些虚拟机可以在不同的主机上、也可以在同一个主机上;一个虚拟机中的对象调用另一个虚拟上中的对象的方法,只不过是允许被远程调用的对象要通过一些标志加以标识。这样做的特点如下: ...
CC4 环境: Commons-Collections 4.0 https://mvnrepository.com/artifact/org.apache.commons/commons-collections4/4.0 xml 1 2 3 4 5 6 7 8 <dependencies> <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.0</version> </dependency> </dependencies> JDK 8u65 分析: 以 ChainedTransformer.transform 为出发点,往回找 ...
再次深入学习动态加载字节码: 动态加载字节码 1、什么是Java的字节码 严格来说,Java字节码(ByteCode)其实仅仅指的是Java虚拟机执行使用的一类指令,通常被存储在.class文件中。 ...
环境: JDK 8u71: https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html Comoons-Collections 3.2.1 CC6 链分析: 在 CC1 中分析过 JDK 8u71之后的 AnnotationInvocationHandler.readObject 的写法改变,导致 CC1 链用不了,也就是说: AnnotationInvocationHandler.readObject AnnotationInvocationHandler.invoke.memberValues.get 这半条链子用不了,所以要找一个替代,这个替代也应该调用了 LazyMap.get 方法,之后的链子和 CC1 一样。 ...
环境 1、JDK-8u65 https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html 注意:国家不要选为国区,国区对应的 8u65 下载的时候会自动下载 8u111 等高版本! 2、Maven-commons-collections 3.2.1 https://mvnrepository.com/artifact/commons-collections/commons-collections/3.2.1 xml 1 2 3 4 5 6 <!-- https://mvnrepository.com/artifact/commons-collections/commons-collections --> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2.1</version> </dependency> 3、修改 sun 包-方便调试 https://hg.openjdk.org/jdk8u/jdk8u/jdk/rev/af660750b2f4 ...
Java 反序列化 1、序列化与反序列化 1.1 什么是序列化&反序列化 序列化:将内存中的对象压缩成字节流 反序列化:将字节流转化成内存中的对象 1.2 为什么有序列化技术 序列化与反序列化的设计就是用来传输数据的。 ...
项目地址:https://github.com/jishenghua/jshERP/releases/tag/2.3 环境搭建: MySQL 5.7.26,IDEA,Maven 3.9.1,JDK 1.8, 数据库新建jsh_erp数据库,导入sql文件 IDEA 的 JDK 版本切换为1.8 ...