Spring两大漏洞可导致泄露敏感信息及安全防护绕过(CVE-2025-41253/41254)
字数 1927 2025-10-18 11:17:50

Spring 安全漏洞分析与防护指南(CVE-2025-41253 / CVE-2025-41254)

概述

VMware Tanzu 旗下 Spring 团队于 2025 年披露两个高危漏洞:

  1. CVE-2025-41253:Spring Cloud Gateway SpEL 表达式注入漏洞,可导致敏感信息泄露。
  2. CVE-2025-41254:Spring Framework STOMP over WebSocket CSRF 绕过漏洞,可导致未授权消息注入。

一、CVE-2025-41253:SpEL 表达式注入漏洞

漏洞描述

Spring Cloud Gateway Server Webflux(非 WebMVC)在应用路由中错误使用 Spring 表达式语言(SpEL),攻击者可通过执行恶意 SpEL 表达式读取环境变量、系统属性等敏感数据。

影响范围

  • 开源版本
    • 4.3.0 – 4.3.x
    • 4.2.0 – 4.2.x
    • 4.1.0 – 4.1.x
    • 4.0.0 – 4.0.x
    • 3.1.0 – 3.1.x
    • 更早的未维护版本
  • 商业版本:同版本范围。

漏洞触发条件

需同时满足以下条件:

  1. 使用 Spring Cloud Gateway Server Webflux。
  2. 允许管理员或不受信任的第三方使用 SpEL 表达式定义路由。
  3. 执行器端点暴露(management.endpoints.web.exposure.include=gateway)。
  4. 执行器端点未实施安全防护(如身份验证或授权)。

攻击后果

  • 泄露环境变量、系统属性、身份验证令牌、API 密钥、数据库凭证等敏感信息。

修复方案

立即升级

  • 开源版:升级至 4.3.2 或 4.2.6。
  • 商业版:升级至 4.1.12 或 3.1.12。

临时缓解措施

  1. management.endpoints.web.exposure.include 属性中移除 gateway
  2. 对执行器端点实施安全防护(如配置身份验证、IP 白名单或网络隔离)。

二、CVE-2025-41254:STOMP WebSocket CSRF 绕过漏洞

漏洞描述

Spring Framework 的 STOMP over WebSocket 功能存在 CSRF 防护绕过漏洞,攻击者可发送未授权的 WebSocket 消息。

影响范围

  • 开源版本
    • 6.2.0 – 6.2.11
    • 6.1.0 – 6.1.23
    • 6.0.x – 6.0.29
    • 5.3.0 – 5.3.45
  • 商业版本:同版本范围。

受影响应用

依赖 Spring WebSocket 实现实时通信的应用:

  • 在线聊天系统
  • 金融仪表板
  • 物联网控制面板

修复方案

立即升级

  • 开源版:升级至 6.2.12。
  • 商业版:升级至 6.1.24 或 5.3.46。

临时缓解措施

  • 检查并增强 WebSocket 消息的授权逻辑,避免依赖默认 CSRF 防护。

三、防护建议与最佳实践

通用安全措施

  1. 定期更新依赖:监控 Spring 官方安全公告,及时应用补丁。
  2. 最小化端点暴露:仅暴露必要的执行器端点,禁用默认开放的高风险端点。
  3. 网络隔离:将管理接口与公网隔离,仅允许内网或 VPN 访问。
  4. 强化认证授权:对所有管理端点实施强身份验证和角色授权。

针对 CVE-2025-41253 的额外建议

  • 避免允许不受信任的来源定义或修改路由规则。
  • 定期审计环境变量和系统属性的访问权限。

针对 CVE-2025-41254 的额外建议

  • 在 WebSocket 消息处理层添加业务逻辑校验(如用户会话验证)。
  • 启用 Spring Security 的 CSRF 防护并自定义 WebSocket 安全策略。

四、漏洞验证与检测

CVE-2025-41253 检测方法

  1. 检查应用是否使用 Spring Cloud Gateway Webflux。
  2. 确认是否暴露 /actuator/gateway 端点。
  3. 尝试通过 SpEL 表达式读取 systemPropertiesenvironment 数据。

CVE-2025-41254 检测方法

  1. 验证应用是否使用 STOMP over WebSocket。
  2. 测试未经验证是否可发送 WebSocket 消息。

五、参考资源

  1. Spring 官方安全公告
  2. CVE-2025-41253 详细说明
  3. CVE-2025-41254 详细说明

免责声明:本文仅供技术研究参考,使用者应自行评估风险并遵守《中华人民共和国网络安全法》。作者不承担因滥用或误用本文内容导致的任何责任。

Spring 安全漏洞分析与防护指南(CVE-2025-41253 / CVE-2025-41254) 概述 VMware Tanzu 旗下 Spring 团队于 2025 年披露两个高危漏洞: CVE-2025-41253 :Spring Cloud Gateway SpEL 表达式注入漏洞,可导致敏感信息泄露。 CVE-2025-41254 :Spring Framework STOMP over WebSocket CSRF 绕过漏洞,可导致未授权消息注入。 一、CVE-2025-41253:SpEL 表达式注入漏洞 漏洞描述 Spring Cloud Gateway Server Webflux(非 WebMVC)在应用路由中错误使用 Spring 表达式语言(SpEL),攻击者可通过执行恶意 SpEL 表达式读取环境变量、系统属性等敏感数据。 影响范围 开源版本 : 4.3.0 – 4.3.x 4.2.0 – 4.2.x 4.1.0 – 4.1.x 4.0.0 – 4.0.x 3.1.0 – 3.1.x 更早的未维护版本 商业版本 :同版本范围。 漏洞触发条件 需同时满足以下条件: 使用 Spring Cloud Gateway Server Webflux。 允许管理员或不受信任的第三方使用 SpEL 表达式定义路由。 执行器端点暴露( management.endpoints.web.exposure.include=gateway )。 执行器端点未实施安全防护(如身份验证或授权)。 攻击后果 泄露环境变量、系统属性、身份验证令牌、API 密钥、数据库凭证等敏感信息。 修复方案 立即升级 开源版 :升级至 4.3.2 或 4.2.6。 商业版 :升级至 4.1.12 或 3.1.12。 临时缓解措施 从 management.endpoints.web.exposure.include 属性中移除 gateway 。 对执行器端点实施安全防护(如配置身份验证、IP 白名单或网络隔离)。 二、CVE-2025-41254:STOMP WebSocket CSRF 绕过漏洞 漏洞描述 Spring Framework 的 STOMP over WebSocket 功能存在 CSRF 防护绕过漏洞,攻击者可发送未授权的 WebSocket 消息。 影响范围 开源版本 : 6.2.0 – 6.2.11 6.1.0 – 6.1.23 6.0.x – 6.0.29 5.3.0 – 5.3.45 商业版本 :同版本范围。 受影响应用 依赖 Spring WebSocket 实现实时通信的应用: 在线聊天系统 金融仪表板 物联网控制面板 修复方案 立即升级 开源版 :升级至 6.2.12。 商业版 :升级至 6.1.24 或 5.3.46。 临时缓解措施 检查并增强 WebSocket 消息的授权逻辑,避免依赖默认 CSRF 防护。 三、防护建议与最佳实践 通用安全措施 定期更新依赖 :监控 Spring 官方安全公告,及时应用补丁。 最小化端点暴露 :仅暴露必要的执行器端点,禁用默认开放的高风险端点。 网络隔离 :将管理接口与公网隔离,仅允许内网或 VPN 访问。 强化认证授权 :对所有管理端点实施强身份验证和角色授权。 针对 CVE-2025-41253 的额外建议 避免允许不受信任的来源定义或修改路由规则。 定期审计环境变量和系统属性的访问权限。 针对 CVE-2025-41254 的额外建议 在 WebSocket 消息处理层添加业务逻辑校验(如用户会话验证)。 启用 Spring Security 的 CSRF 防护并自定义 WebSocket 安全策略。 四、漏洞验证与检测 CVE-2025-41253 检测方法 检查应用是否使用 Spring Cloud Gateway Webflux。 确认是否暴露 /actuator/gateway 端点。 尝试通过 SpEL 表达式读取 systemProperties 或 environment 数据。 CVE-2025-41254 检测方法 验证应用是否使用 STOMP over WebSocket。 测试未经验证是否可发送 WebSocket 消息。 五、参考资源 Spring 官方安全公告 CVE-2025-41253 详细说明 CVE-2025-41254 详细说明 免责声明 :本文仅供技术研究参考,使用者应自行评估风险并遵守《中华人民共和国网络安全法》。作者不承担因滥用或误用本文内容导致的任何责任。