Xiao Wu | Blog
  • 首页
  • 归档
  • 分类
  • 关于

fastjson反序列化

fastjsonFastjson 是一个 Java 库,可以将 Java 对象转换为 JSON 格式,也可以将 JSON 字符串转换为 Java 对象。 序列化JSON.toJSONString():将对象转为json格式 1String jsonString1 = JSON.toJSONString(student); {“name”:”xiaowu”} 如果要得到对象类的全限名,需要添加Se
2025-12-04
java安全

Commons-BeanUtils利用链

Commons-BeanUtils介绍Apache Commons 工具集下除了collections以外还有BeanUtils,它主要用于操控JavaBean。 以 Utils 结尾,一般这都是一个工具类/集 JavaBean 就是一个实体类 JavaBean 类必须是一个公共类,并将其访问属性设置为 public ,如: public class Baby JavaBean 类
2025-12-04
java安全

Apache Commons Collections 7

Apache Commons Collections 7跟CC5一样,也是利用CC1的LazyMap.get及之后的部分,也是只改了开头。 这次是利用Hashtable.readObject方法,这个类是可以序列化的。 AbstractMap.equals()调用了get()方法 12345678910111213141516171819202122232425262728293031323334
2025-12-04
java安全

Apache Commons Collections 6

Apache Commons Collections 6Java 反序列化当中,CC6 链被称为是最好用的 CC 链,它可以不受 jdk 版本的约束进行反序列化攻击 cc6前面跟cc1LazyMap链相似,都是通过ChainedTransformer类链式调用InvokerTransformer类完成反射创建Runtime对象,再通过LazyMap类的get方法完成命令执行。 cc1LazyMap
2025-12-04
java安全

Apache Commons Collections 5

Apache Commons Collections 5CC5链和CC1差不多,只不过调用LazyMap.get()是通过 TiedMapEntry.toString()触发的 TiedMapEntry.toString()123public String toString() { return getKey() + "=" + getValue();}
2025-12-04
java安全

Apache Commons Collections 4

Apache Commons Collections 4因为 Commons Collections 4 除 4.0 的其他版本去掉了 InvokerTransformer 不再继承 Serializable,导致无法序列化。同时 CommonsCollections 4的版本 TransformingComparator 继承了 Serializable接口,而CommonsCollection
2025-12-04
java安全

Apache Commons Collections 3

Apache Commons Collections 3CC1与CC6链都是通过 Runtime.exec() 进行命令执行的。当服务器的代码将 Runtime放入黑名单的时候 就不能使用了。 CC3链的好处是通过动态加载类的机制实现恶意类代码执行。 ClassLoader.loadClass(String name)先检查这个类是否已经被当前类加载器加载过(缓存查找)。 如果没加载过,走双亲委
2025-12-04
java安全

Apache Commons Collections 2

Apache Commons Collections 2cc2是在commons-collections 4.0中使用,相比起commons-collections 4.1,在4.0中InvokerTransformer这个类还是实现Serializable所以还可以序列化的。 在cc4中使用TemplatesImpl的动态类加载执行命令,再通过InstantiateTransformer类与Tr
2025-12-04
java安全

Apache Commons Collections 1 TransformedMap

Apache Commons Collections 1 TransformedMapApache Commons Collections 是一个广泛使用的 Java 库,提供了丰富的集合框架扩展和实用工具。然而,它也因其在 Java 反序列化攻击中的广泛应用而受到关注。特别是,Commons Collections 库中的某些类可以被恶意利用,导致任意代码执行。 环境设置jdk版本 jdk-8u
2025-12-04
java安全

Apache Commons Collections 1 LazyMap

Apache Commons Collections 1 LazyMapLazyMap链和transformedMap链相似,入口点都是InvokerTransformer类的transform方法,依然是通过ChainedTransformer类链式调用InvokerTransformer类进行反射创建Runtime对象 LazyMapLazyMap的get函数调用了transform方法,如果
2025-12-04
java安全
1234

搜索

Hexo Fluid