Spring Cloud Function SPEL表达式注入漏洞复现
- 影响组件及版本
org.springframework.cloud:spring-cloud-function-context(影响版本:3.0.0.RELEASE~3.2.2)
- 缺陷前置条件
properties中配置spring.cloud.function.definition=functionRouter
- 漏洞描述
Spring Cloud Function 是Spring cloud中的serverless框架。
Spring Cloud Function 中的 RoutingFunction 类的 apply 方法将请求头中的“spring.cloud.function.routing-expression”参数作为 Spel 表达式进行处理,造成 Spel 表达式注入漏洞。
攻击者可通过该漏洞执行任意代码。 - 漏洞复现
安装JDK 9
配置JDK环境变量
配置Apache Maven 环境变量
打包Spring项目
运行
利用成功
- 漏洞修复建议
https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f
本文来自博客园,作者:爱薇仔,转载请注明原文链接:https://www.cnblogs.com/zh2000/p/16079957.html