Spring-beans RCE漏洞分析
说明
要求条件:
JDK9及其以上版本;
使⽤了Spring-beans包; 使⽤了Spring参数绑定;
Spring参数绑定使⽤的是⾮基本参数类型,例如⼀般的POJO即可;
测试环境
https://github.com/p1n93r/spring-rce-war
漏洞分析
Spring参数绑定不过多介绍,可⾃⾏百度;其基本使⽤⽅式就是利⽤ . 的形式,给参数进⾏赋值,实际赋值过程,会使⽤反射调⽤参
数的 or ;
这个漏洞刚爆出来的时候,我下意思认为是⼀个垃圾洞,因为我觉得需要使⽤的参数内,存在⼀个Class类型的属性,没有哪个傻逼开发会在POJO中使⽤这个属性;但是当我认真跟下来的时候,发现事情没这么简单;
例如我需要绑定的参数的数据结构如下,就是⼀个很简单的POJO:
/**
* @author : p1n93r
* @date : 2022/3/29 17:34
*/ @Setter @Getter
public class EvalBean {
public EvalBean() throws Cl
共有 0 条评论