声明
本文章仅用于漏洞复现和技术学习,切勿从事非法渗透行为,切记!
前言
在 Spring Cloud Function 版本 3.1.6、3.2.2 和不受支持的旧版本中,当使用路由功能时,用户可以提供特制的 SpEL 作为路由表达式,这可能导致远程代码执行和对本地资源的访问。
一、漏洞概述
Spring Cloud Function 是基于Spring Boot 的函数计算框架(FaaS),当其启用动态路由 functionRouter
时, HTTP请求头 spring.cloud.function.routing-expression 参数存在 SPEL 表达式注入漏洞
,攻击者可通过该漏洞进行远程命令执行。
二、影响版本
3.0.0.RELEASE <= Spring Cloud Function <= 3.2.2
三、本地复现
使用大佬编译好的项目在本地复现
github地址:https://github.com/Pizz33/Spring-Cloud-Function-SpEL
查看 Java 版本