目录
0x04 AnnotationInvocationHandler触发setValue条件
1、首先使用LazyMap替换 TransformedMap:
2、AnnotationInvocationHandler 对象进行Proxy
(一)原理
先来看 ysoserial 中的利用链:
Gadget chain:
ObjectInputStream.readObject()
AnnotationInvocationHandler.readObject()
Map(Proxy).entrySet()
AnnotationInvocationHandler.invoke()
LazyMap.get()
ChainedTransformer.transform()
ConstantTransformer.transform()
InvokerTransformer.transform()
Method.invoke()
Class.getMethod()
InvokerTransformer.transform()