【安全通报】Spring Cloud Function SPEL 远程命令执行漏洞

AnM1ng  57天前

product20220325.png

近日,Spring Cloud Function 官方测试用例曝光了 Spring Cloud Function SPEL表达式注入漏洞,该漏洞可通过对 SPEL表达式进行注入从而引发远程命令执行。

漏洞描述

Spring Cloud Function 是基于Spring Boot 的函数计算框架,通过对传输细节和基础架构进行抽象,为开发人员保留熟悉的开发工具和开发流程,使开发人员专注在实现业务逻辑上,从而提升开发效率。

访问Spring Cloud Function的 HTTP请求头中存在 spring.cloud.function.routing-expression参数,其 SpEL表达式可进行注入攻击,并通过 StandardEvaluationContext解析执行。最终,攻击者可通过该漏洞进行远程命令执行。

漏洞复现

白帽汇漏洞研究院已通过漏洞复现确认该漏洞存在。

right.png

FOFA 查询

app="vmware-SpringBoot-framework"

影响范围

影响范围:

3.0.0.RELEASE <= Spring Cloud Function <= 3.2.2 
注:部分版本进行特定配置的动态路才会受该漏洞影响!

根据目前FOFA系统最新数据(一年内数据),显示全球范围内(app="vmware-SpringBoot-framework")共有 1,141,725 个相关服务对外开放。中国使用数量最多,共有 531,594 个;美国第二,共有 306,873 个;德国第三,共有 41,449 个;新加坡第四,共有 31,445 个;韩国第五,共有 30,754 个。

全球范围内分布情况如下(仅为分布情况,非漏洞影响情况)

global20220325.png

中国大陆地区北京使用数量最多,共有 78,410 个;浙江第二,共有 65,499 个;广东第三,共有 55,699 个;上海第四,共有 48,127 个;山东第五,共有 15,430 个。

country20220325.png

Vulfocus 靶场环境

目前 Vulfocus 已经集成 Spring Cloud Function SPEL 远程代码执行 环境,可通过以下链接启动环境测试:

http://vulfocus.io/#/dashboard?image_id=da738dd3-7558-4564-9ac6-194e861b03e4

也可通过 vulfocus/spring-cloud-function-rce:latest:latest 拉取本地环境运行。

vulfocus20220326.png

修复建议

参考漏洞影响范围进行排查,官方已针对此漏洞发布修复补丁,请受影响的用户尽快修复。

官方链接:https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f

注:目前官方暂未发布新版本,请持续关注并及时更新:https://github.com/spring-cloud/spring-cloud-function/tags

参考

[1] https://docs.spring.io/spring-cloud-function/docs/3.2.2/reference/html/spring-cloud-function.html#_function_routing_and_filtering

[2] https://hosch3n.github.io/2022/03/26/SpringCloudFunction%E6%BC%8F%E6%B4%9E%E5%88%86%E6%9E%90/

白帽汇从事信息安全,专注于安全大数据、企业威胁情报。

公司产品:FOFA-网络空间安全搜索引擎、FOEYE-网络空间检索系统、NOSEC-安全讯息平台。

为您提供:网络空间测绘、企业资产收集、企业威胁情报、应急响应服务。

最新评论

昵称
邮箱
提交评论