漏洞篇 - Java 反序列化之 CC6 链

前面在分析 CC1链 的 ysoserial 版时,我们知道 LazyMap 的 get 方法会调用成员属性 factory 的 transform 方法,而我们上一次是通过 AnnotationInvocationHandler 的 invoke 方法来调用这个 get 方法的。那么还有哪里能调用 LazyMap 的 get 方法呢?我们的 CC6 链给出了另一条路径:TiedMapEntry 类的 getValue 方法会调用成员属性的 get 方法。

Java 安全

漏洞篇 - CC1 链之 ysoserial 版

在前面学习 CC1 链时,我们使用 TransformedMap 作为利用链,但其实除了 TransformedMap 之外,还有 DefaultedMap 和 LazyMap 也可以作为利用链,它们都在 org.apache.commons.collections.map 包下。这一节我们来分析 ysoserial 工具中利用的 CC1 链,它是将 LazyMap 作为利用链的。

Java 安全

配置篇 - IDEA 查看带 sun 包的 JDK 源码

前言:前面在分析初始版本 CC1 链的时候,查看 sun 包里的 AnnotationInvocationHandler 类的源码,发现变量名全都是 var 开头,非常不便于阅读,接下来将介绍如何使用 IDEA 查看带 sun 包的 JDK 源码,以及导入的依赖源码,这里的源码指的是 .java 文件。

Java 安全

基础篇 - Java 动态代理

在 Java 动态代理中,代理对象能够通过调用 invoke 方法来增强被代理对象的原始方法。

Java 安全

配置篇 - Maven 手动下载与导入依赖

遇到 maven 无法自动导入的依赖怎么办,本文介绍了如何手动下载与导入 maven 依赖

Java 安全

漏洞篇 - URLDNS 利用链分析

本文详尽地讲述了 URLDNS 反序列化利用链的原理

Java 安全

漏洞篇 - Java 反序列化之 CC1 链

Apache Commons Collections 是对 java.util.Collection 的扩展,对常用的集合操作进行了很好的封装、抽象和补充,在保证性能的同时大大简化代码。CC 链正是在 Commons Collections 包中的反序列化利用链,本次介绍的是 CC1 链。

Java 安全

基础篇 - Java 的类加载与反射

本文介绍了 Java 的类加载与反射机制,概括了获得 Class 对象的几种方式,以及总结了反射获取类信息的方法。

Java 安全

基础篇 - Java 序列化与反序列化

Java 序列化是指把 Java 对象转换为字节序列的过程,而 Java 反序列化是指把字节序列恢复为 Java 对象的过程。本文详细讲解了 Java 序列化与反序列化的实现。

Java 安全
123