Spring Cloud Function SPEL表达式注入漏洞通告

admin 2022年3月27日02:07:24评论147 views字数 990阅读3分18秒阅读模式

Spring Cloud Function SPEL表达式注入漏洞通告

漏洞背景

Spring是Java EE编程领域的一个轻量级开源框架,Spring Cloud Function 是基于 Spring Boot 的函数计算框架,其抽象出所有传输细节和基础架构,允许开发人员保留所有熟悉的工具和流程,并专注于业务逻辑。近日,飓风安全监测到Spring Cloud官方提交了一个修复代码,解决了在Spring Cloud Function中存在的一个SPEL表达式注入漏洞。该漏洞利用方式简单,影响范围较大,且该漏洞的利用细节已公开,建议受影响用户尽快安装更新补丁,避免受到影响。


漏洞原理

该漏洞是由于Spring Cloud Function的RoutingFunction类未能正确处理用户发送的数据,导致其apply方法错误地将请求头中”spring.cloud.function.routing-expression”的参数识别为SPEL表达式,未经身份验证的恶意攻击者通过发送带有恶意命令的请求数据,能够在目标服务器上执行任意代码。


■ 漏洞复现

搭建受影响版本的Spring Cloud Function并运行,构造带有恶意命令的数据发送至服务器,成功执行命令:

Spring Cloud Function SPEL表达式注入漏洞通告


 


影响范围

3.0.0.RELEASE <= Spring Cloud Function <= 3.2.2

漏洞等级:高危



  处置方法 


■ 漏洞排查方法

用户可排查应用程序中对spring-cloud-function组件的引用情况,并检查当前使用的版本:

1. 若程序使用Maven打包,根据项目pom.xml文件中是否引用了spring-cloud-function-context组件:

Spring Cloud Function SPEL表达式注入漏洞通告


2. 对使用了org.springframework.cloud:spring-cloud-function-context组件的项目代码,可使用以下命令查看版本:

Grep -A 2 'spring-cloud-function-context' pom.xml


■ 官方补丁

目前官方已提交修复代码,但暂未发布新版本,请受影响用户及时关注并尽快更新,官方链接:

https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f



原文始发于微信公众号(飓风网络安全):Spring Cloud Function SPEL表达式注入漏洞通告

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月27日02:07:24
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Spring Cloud Function SPEL表达式注入漏洞通告https://cn-sec.com/archives/843231.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息