这两天爆出一个Spring框架的RCE,据说危害堪比之前的log4j2。客户要求进行简单排查,这里复现记录一下,备忘。

0x01 环境搭建

vulfocus上有现成的docker靶场环境,直接拉取即可。也可以看看上一篇文章,本地搭建vulfocus环境

docker pull vulfocus/spring-core-rce-2022-03-29
docker run -t -i -p 8080:8080 vulfocus/spring-core-rce-2022-03-29:latest /bin/bash
bash /app/tomcat/bin/startup.sh

利用漏洞条件比较严格,需要满足以下条件。该条件也可作为检查判断漏洞是否存在的依据

1.JDK9或更高版本
2.使用传统的WAR打包方式,并部署在独立的Servlet容器上
3.使用spring-webmvc 或 spring-webflux依赖
4.Spring Framework versions 5.3.0 to 5.3.17, 5.2.0 to 5.2.19, and older versions

0x02 漏洞利用

打开靶场Tomcat服务后访问127.0.0.1:8080,之后利用exp即可。通过返回的URL可以直接执行命令。

0x03 漏洞防护

升级Spring框架至最新版本即可。