CommonsCollections CC6
CC6 是 CommonsCollections 反序列化链里常见的一条链,适合和 CC1 对照学习。整理时重点关注触发入口、LazyMap / TiedMapEntry 的触发方式,以及最终如何走到 ChainedTransformer。
核心思路
- 利用反序列化触发某个容器对象的
readObject或哈希计算流程。 - 通过
TiedMapEntry触发LazyMap#get。 LazyMap调用恶意Transformer链。ChainedTransformer逐步反射调用到命令执行 sink。
和 CC1 的关系
- CC1 更适合先理解
Transformer链和反射调用。 - CC6 更适合理解
HashMap、TiedMapEntry、LazyMap如何组合触发。
复盘检查点
- CommonsCollections 版本是否满足链条条件。
- 目标 JDK 版本是否有限制。
- payload 生成后是否需要先清理 map 里的触发痕迹。
- 反序列化入口是否真的会读取可控对象。