Spring Data MongoDB SpEL表达式注入漏洞安全风险通告第二次更新

admin 2022年6月22日22:33:32评论38 views字数 2519阅读8分23秒阅读模式
Spring Data MongoDB SpEL表达式注入漏洞安全风险通告第二次更新

奇安信CERT

致力于第一时间为企业级用户提供安全风险通告有效解决方案。




安全通告



近日,奇安信CERT监测到Spring Data MongoDB SpEL表达式注入漏洞(CVE-2022-22980),当使用@Query或@Aggregation注解进行查询时,若通过SpEL表达式中形如“?0”的占位符来进行参数赋值,同时应用程序未对用户输入进行过滤处理,则可能受到SpEL表达式注入的影响,成功利用该漏洞的攻击者可在目标服务器上执行代码。鉴于漏洞影响范围较大,建议客户尽快做好自查及防护。


本次更新内容:

新增Spring Data MongoDB SpEL 表达式注入漏洞(CVE-2022-22980)复现截图;
新增产品线解决方案。

漏洞名称

Spring Data MongoDB SpEL表达式注入漏洞

公开时间

2022-06-20

更新时间

2022-06-21

CVE编号

CVE-2022-22980

其他编号

QVD-2022-9645

威胁类型

代码执行

技术类型

SpEL表达式注入

厂商

VMware

产品

Spring Data   MongoDB

风险等级

奇安信CERT风险评级

风险等级

高危

蓝色(一般事件)

现时威胁状态

POC状态

EXP状态

在野利用状态

技术细节状态

已公开

未发现

未发现

未发现

漏洞描述

当使用@Query或@Aggregation注解进行查询时,若通过SpEL表达式中形如“?0”的占位符来进行参数赋值,同时应用程序未对用户输入进行过滤处理,则可能受到SpEL表达式注入的影响,成功利用该漏洞的攻击者可在目标服务器上执行代码。

影响版本

Spring Data MongoDB == 3.4.0

3.3.0 <= Spring Data MongoDB <= 3.3.4

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

不受影响版本

Spring Data MongoDB   >= 3.4.1

Spring Data MongoDB   >= 3.3.5

其他受影响组件

使用 Spring Data MongoDB依赖的应用程序


奇安信CERT已成功复现Spring Data MongoDB SpEL(CVE-2022-22980)表达式注入漏洞, 复现截图如下:

Spring Data MongoDB SpEL表达式注入漏洞安全风险通告第二次更新



风险等级

奇安信 CERT风险评级为:高危
风险等级:蓝色(一般事件)



威胁评估

漏洞名称

Spring Data MongoDB SpEL表达式注入漏洞

CVE编号

CVE-2022-22980

其他编号

QVD-2022-9645

CVSS 3.1评级

高危

CVSS 3.1分数

8.2

CVSS向量

访问途径(AV)

攻击复杂度(AC)

网络

用户认证(Au)

用户交互

不需要

影响范围

机密性影响(C)

不改变

完整性影响(I)

可用性影响(A)

危害描述

当使用@Query或@Aggregation注解进行查询时,若通过SpEL表达式中形如“?0”的占位符来进行参数赋值,同时应用程序未对用户输入进行过滤处理,则可能受到SpEL表达式注入的影响,成功利用该漏洞的攻击者可在目标服务器上执行代码。



处置建议

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

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


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)在调用查询方法时过滤用户输入内容。


更多修复建议请参考官方发布的安全建议文档:

https://spring.io/blog/2022/06/20/spring-data-mongodb-spel-expression-injection-vulnerability-cve-2022-22980



产品解决方案

奇安信开源卫士已支持

奇安信开源卫士20220622. 1107版本已支持对Spring Data MongoDB SpEL 表达式注入漏洞(CVE-2022-22980)的检测。


奇安信网站应用安全云防护系统已更新防护特征库

奇安信网神网站应用安全云防护系统已全面支持对Spring Data MongoDB  SpEL 表达式注入漏洞(CVE-2022-22980)的防护。


奇安信天眼检测方案

奇安信天眼新一代安全感知系统已经能够有效检测针对该漏洞的攻击,请将规则版本升级到3.0.0622.13406或以上版本。规则ID及规则名称:

0x10020F84,Spring Data MongoDB SpEL 表达式注入漏洞(CVE-2022-22980)。奇安信天眼流量探针规则升级方法:系统配置->设备升级->规则升级,选择“网络升级”或“本地升级”。



参考资料

[1]https://spring.io/blog/2022/06/20/spring-data-mongodb-spel-expression-injection-vulnerability-cve-2022-22980



时间线

2022年6月21日,奇安信 CERT发布安全风险通告

2022年6月22日,奇安信 CERT发布安全风险通告第二次更新


点击阅读原文

到奇安信NOX-安全监测平台查询更多漏洞详情

原文始发于微信公众号(奇安信 CERT):Spring Data MongoDB SpEL表达式注入漏洞安全风险通告第二次更新

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月22日22:33:32
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Spring Data MongoDB SpEL表达式注入漏洞安全风险通告第二次更新http://cn-sec.com/archives/1136350.html

发表评论

匿名网友 填写信息