热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【墨菲安全实验室】SpringCloudFunction3.0.0.RELEASE~3.2.2版本SPEL表达式注入

实验室昨天第一时间监测到的0day漏洞,目前已上线检测一、简述3月25日,墨菲安全实验室监测发现SpringCloudFunction修复了Spel表

实验室昨天第一时间监测到的0day漏洞,目前已上线检测



一、简述

3月25日,墨菲安全实验室监测发现 Spring Cloud Function 修复了 Spel 表达式注入漏洞,已 2022.03.25 日17时提交CNVD,并上线检测能力。

漏洞发现时间:2022-03-24
漏洞验证时间:2022-03-25,已第一时间提交CNVD
标题:Spring Cloud Function 3.0.0.RELEASE~3.2.2 版本SPEL表达式注入漏洞
发现方式:墨菲安全实验室情报预警监控
语言:java
影响组件及版本: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 表达式注入漏洞。
攻击者可通过该漏洞执行任意代码。
漏洞类型: Spel 表达式注入漏洞
排查方式:


  1. 在项目代码目录中执行以下命令获取 org.springframework.cloud:spring-cloud-function-context 组件版本,且组件版本在【3.0.0.RELEASE~3.2.2】之间
    grep -A 2 ‘spring-cloud-function-context’ pom.xml
  2. 使用墨菲安全客户端进行检测

处置建议
官方已发布修改补丁,参考链接:https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f
升级 org.springframework.cloud:spring-cloud-function-context 到 3.2.2 的下一版本(待发布)

漏洞评分:8.5
参考链接:https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f
在这里插入图片描述


二、缺陷分析

通过diff可以发现开发者使用了SimpleEvaluationContext进行SPEL解析,而在此前版本中使用StandardEvaluationContext。

当spring.cloud.function.definition=functionRouter配置开启时,会触发RoutingFunction逻辑,当传入的spring.cloud.function.routing-expression参数可控,SPEL表达式被执行。
在这里插入图片描述


三、漏洞防护

目前开发者已提交修复补丁:https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f

墨菲安全已于昨天第一时间将漏洞上报CNVD,并同步上线了检测能力,目前墨菲安全开源版及企业版已支持检测,欢迎大家免费使用。

在这里插入图片描述

开源地址:https://github.com/murphysecurity
产品官网:https://www.murphysec.com/(限时开放注册)


四、关于

关于墨菲安全
墨菲安全是一家为您提供专业的软件供应链安全管理的科技创新公司,能力包括开源组件安全检测、云原生容器安全、开源组件许可证合规管理、软件成分分析(SCA)、软件供应链安全评估等,丰富的安全工具助您打造完备的软件开发安全能力(DevSecOps)。公司核心团队来自百度、华为、贝壳等企业,拥有超过十年的企业安全建设、安全产品研发及安全攻防经验。

关于墨菲安全实验室
墨菲安全实验室是墨菲安全旗下的安全研究团队,专注于软件供应链安全相关领域的技术研究,实验室研究方向包括开源组件、闭源软件及其他供应链软件的缺陷分析,从而打造墨菲安全专业的缺陷知识库。


推荐阅读
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 闭包一直是Java社区中争论不断的话题,很多语言都支持闭包这个语言特性,闭包定义了一个依赖于外部环境的自由变量的函数,这个函数能够访问外部环境的变量。本文以JavaScript的一个闭包为例,介绍了闭包的定义和特性。 ... [详细]
  • 本文介绍了brain的意思、读音、翻译、用法、发音、词组、同反义词等内容,以及脑新东方在线英语词典的相关信息。还包括了brain的词汇搭配、形容词和名词的用法,以及与brain相关的短语和词组。此外,还介绍了与brain相关的医学术语和智囊团等相关内容。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 如何使用Java获取服务器硬件信息和磁盘负载率
    本文介绍了使用Java编程语言获取服务器硬件信息和磁盘负载率的方法。首先在远程服务器上搭建一个支持服务端语言的HTTP服务,并获取服务器的磁盘信息,并将结果输出。然后在本地使用JS编写一个AJAX脚本,远程请求服务端的程序,得到结果并展示给用户。其中还介绍了如何提取硬盘序列号的方法。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
author-avatar
Cindere丷lla_茹满
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有