关于Spring Data MongoDB SpEL表达式注入漏洞(CVE-2022-22980)的预警提示

SpringData for MongoDB存在SpEL表达式注入漏洞(CVE-2022-22980),若输入未过滤则易受攻击。影响版本包括3.4.0及3.3.0至3.3.4等。建议用户尽快升级到最新修复版本3.4.1或3.3.5,并采取缓解措施。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、漏洞详情

Spring Data for MongoDB是Spring Data项目的一部分,该项目旨在为新的数据存储提供熟悉和一致的基于Spring的编程模型,同时保留存储的特定特征和功能。

VMware发布安全公告,修复了Spring Data MongoDB中的一个SpEL表达式注入漏洞(CVE-2022-22980)。

Spring Data MongoDB应用程序在对包含查询参数占位符的SpEL表达式使用@Query或@Aggregation注解的查询方法进行值绑定时,如果输入未被过滤,则容易受到SpEL注入攻击。

建议受影响用户做好资产自查以及预防工作,以免遭受黑客攻击。

二、影响范围

Spring Data MongoDB == 3.4.0

3.3.0 <= Spring Data MongoDB <= 3.3.4

旧的、不受支持的版本也会受到影响

三、修复建议

目前,VMware官方已发布漏洞修复补丁,建议用户尽快下载安装补丁程序或采取缓解措施。

3.1. 补丁升级

建议尽快升级至官方修护版本:

Spring Data MongoDB 3.4.1版本:

https://github.com/spring-projects/spring-data-mongodb/releases/tag/3.4.1

Spring Data MongoDB 3.3.5版本:
https://github.com/spring-projects/spring-data-mongodb/releases/tag/3.3.5

3.2. 缓解措施

(1)如果您的应用程序需要使用由用户输入控制的SpEL表达式,那么使用数组形式语法“[0]”引入SpEL参数而不是“?0”形式;

(2)实现自定义存储库方法,详见:https://docs.spring.io/spring-data/mongodb/docs/current/reference/html/#repositories.single-repository-behavior;

(3)通过BeanPostProcessor和受限的QueryMethodEvaluationContextProvider重新配置存储工厂bean;

(4)在调用查询方法时过滤用户输入内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gblfy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值