Common-Collections-利用链-2(CC2)漏洞分析

slug
series-status
status
summary
date
series
type
password
icon
tags
category

引言

  • 接CC4的前文
  • 其实大家知道,对于动态加载恶意类的利用方法,其实只要最后走到TemplateImpl.newTransformer就可以的,而不一定是从InstantiateTransformer.transform入手的,因此引出了CC2这条利用链

CC2分析

  • 为了达到上述的目的呢,我们可以直接利用InvokerTransformer去调用这个TemplateImpl.newTransformer方法就行了
  • 和前文的CC4的优先队列的方法结合:
  • 效果:
notion image
  • 修改为序列化+反序列化的形式:
  • 效果:
notion image
  • 可能已经有同学注意到了,这里我们没有延续之前常用的ChainedTransformer类,而是直接使用了InvokerTransformer类,这是因为我们这里有了PriorityQueue类在前边调用transform方法,避开了之前的AnnotationInvocationHandler中传入参数限制的问题,可以直接去调用执行对象的InvokerTransformer的transform方法了,所以这也是CC2的突出贡献所在。因为在后续例如shiro等反序列化的漏洞中,会涉及到对Transformer数组的限制。

总结

  • 关键节点图:
notion image
参考视频:https://www.bilibili.com/video/BV1NQ4y1q7EU
Loading...

尚未开始
更新中
近期核心
已完结
已弃更

© River 2021-2025