apache-commons-collections3反序列化链分析
调试环境
JDK7+commons-collections-3.1.jar
apache-commons-collections3反序列化链其实利用的地方跟ACC1链一样,只是构造payload的方法有所不同罢了,apache-commons-collections3反序列化链的payload构造利用到了apache-commons-collections1、apache-commons-collections3反序列化链构造的知识点
下面根据ysoserial工具生成apache-commons-collections3反序列化链payload的代码进行分析,没了解过ACC1和ACC2链的可以先去把这两天链跟了,再来看这条链会比较好
漏洞分析
看到CommonsCollections3.getObject
方法,这个方法调用Gadgets.createTemplatesImpl
方法动态生成恶意的TemplatesImpl类,这里跟CommonsCollections2链是一样的,不了解的可以参考这篇文章,这里不再赘述
然后实例化一个ChainedTransformer,分析过ACC1链的知道ChainedTransformer存在一组反射调用(