Java反序列化 CC6链分析前面我们提到过,在JDK 8u71及以后,AnnotationInvocationHandler类的readObject方法被官方修改,加固了反序列化流程,导致不能再直接使用CC1调用LazyMap.get()触发恶意链条。今天我们来分析另一个链子,也是最好用的链子——CC6,CC6的通用性远强于CC1,通过新的入口组合HashMap和TiedMapEntry来触发LazyMap.get(),因为HashMap是 Java 最基础的类,官方为了保证向后兼容性,几乎不可能修改它的反序列化逻辑,所以CC6不限