Java基础、中级、高级、架构面试资料

Spring 6.x 的时代落幕了,16 个漏洞、23 个 Bug 修复的 Spring 7.0.8 发布了

JAVA herman 22浏览
公告:“业余草”微信公众号 AI 中转站提供免费体验,点击链接 https://unity2.ai/register?ref=3XTnndN2 进行访问,支持 Claude、ChatGPT、Gemini 等最新模型!关注业余草微信公众号,添加作者微信:xttblog2!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领
【腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云

早在上个月我就预告了 6 月份是 Spring 生态里的发布大月。基于 Spring 的很多框架都会迎来更新,比如:Spring、Spring AI、Spring Boot、Spring Shell 等等。

而在上周五,也就是 2026 年 6 月 8 日,Spring 团队正式发布了 Spring Framework 7.0.86.2.19。这是一次重要的维护版本更新,其中包含大量安全修复(16 个 CVE)、Bug 修复和新特性。值得注意的是,Spring Framework 6.2.19 是 Spring 6 的最后一个公开版本,标志着 Spring 6.x 时代即将落幕。

接下来,我们一起来看看这次的发布和更新吧!

本文配图参见我的公众号 https://mp.weixin.qq.com/s/OITo2cgV4_WjkQRR-aTN0g

16 个 CVE 安全修复

在昨天的那篇文章里,我已经预告了《AI 冲击 Spring,CVE 安全漏洞狂飙 74 倍》,这不本次 Spring v7.0.8 发布,最引人注目的是修复了 16 个 CVE 漏洞,涉及 WebSocket、WebFlux、Spring MVC、SpEL 表达式、静态资源处理等多个核心模块。

高危漏洞

这一块是需要大家立即关注的,尤其是涉及安防、安全敏感的行业等。

具体的 CVE 信息如下表格所示。

CVE 编号漏洞描述影响模块
CVE-2026-41852SpEL 表达式任意方法调用SpEL
CVE-2026-41855Jackson JMS 转换器不安全反序列化JMS/Jackson
CVE-2026-41854UriComponentsBuilder SSRF 漏洞Web
CVE-2026-41853Multipart 请求走私MVC/WebFlux
CVE-2026-41844Spring MVC/WebFlux 开放重定向MVC/WebFlux
CVE-2026-41843版本化静态资源路径遍历静态资源

中危漏洞

中危漏洞方面,一共涉及 9 个,如下所示。

  • CVE-2026-41838 WebSocket 可预测会话 ID
  • CVE-2026-41839 WebFlux 会话固定攻击
  • CVE-2026-41840 WebFlux Multipart 请求 DoS
  • CVE-2026-41841 静态资源缓存信息泄露
  • CVE-2026-41845/41846 JavaScriptUtils 和 JSP 表单标签 XSS
  • CVE-2026-41848 AntPathMatcher 算法 DoS
  • CVE-2026-41850/41851 SpEL 表达式算法 DoS

如果大家的应用使用了 WebSocket、WebFlux、SpEL 表达式解析或静态资源版本化功能,也建议优先安排升级。

新特性亮点

接下来,看看新特性方面的亮点。

SpEL 表达式评估增强

我们都知道,Spring Expression Language (SpEL) 是 Spring 框架的核心能力之一,广泛应用于配置、安全注解和数据绑定中。本次更新它也带来了多项安全加固。

  • 操作跟踪功能(#36801):新增 SpEL 表达式评估期间的操作跟踪,便于安全审计和调试
  • 改进错误消息(#36756):更清晰的 SpEL 错误提示,降低调试成本
  • 模式缓存优化(#36755):提升 SpEL 解析性能
  • getter 类型校验(#36800):确保 SpEL getter 方法具有非 void 返回类型,避免潜在的类型安全问题

Web 安全加固

  • WebSocket 会话 ID 生成器升级(#36740):从可能可预测的生成器切换至 JdkIdGenerator,提升会话安全性
  • SockJS 会话主体检查改进(#36681):增强 WebSocket/STOMP 集成的身份验证可靠性
  • 不安全静态资源位置警告(#36692):在 MVC 和 WebFlux 中主动警告开发者配置不安全的静态资源路径

性能与兼容性

  • JPA 4.0 / Hibernate 8.0 预览兼容(#36784):运行时兼容 JPA 4.0 M4 和 Hibernate 8.0 快照,为下一代持久层技术铺路
  • Kotlin Flow 上下文传播(#36667):支持 Micrometer 上下文传播到 Kotlin Flow,完善响应式编程的可观测性
  • AntPathMatcher 性能优化(#36799):避免过多字符访问尝试,提升路径匹配效率
  • ResolvableType 缓存竞争消除(#36745):减少隐式缓存清理时的线程竞争

其他实用改进

  • CronTrigger 增强(#36871):equals/hashCode 实现包含 zone ID,解决跨时区定时任务比较问题
  • Basic Auth 字符集支持(#36777):ExchangeFilterFunctions#basicAuthentication 允许指定字符集
  • 版本格式规范化(#36785):SpringVersion.getVersion() 严格限制为 “major.minor.patch” 格式

重要 Bug 修复

接下来看看重要 Bug 修复方面的内容,这一块是每次发布必有的章节。

并发与稳定性

下面这几个 bug,差不多都是一些老外发现的。

Issue描述影响
#36869CookieLocaleResolver 共享 cookie 字段并发问题高并发场景下可能出现竞态条件
#36742InMemoryWebSessionStore 竞态条件WebFlux 会话状态不一致
#36714DataBufferUtils 数据丢失大数据流处理时可能丢失数据

配置与解析

配置与解析时不时的会爆出一些 bug,还是有一些地方没有测试到位,尤其是一些 bug 是由于拆包、改包等引起的,还包含一些回归修复的 bug。

  • #36835(回归修复):修复 6.2.0+ 引入的 ConfigurationClassParser 问题。当同一个类通过组件扫描和 XML 以不同名称注册时,组件扫描的 bean 被错误移除。这是从 6.2.0 开始引入的回归,影响使用混合配置方式的应用。
  • #36865:修复 CronExpression 在午夜 DST(夏令时)间隙跳过天数的问题
  • #36730:修复 MIME 类型带引号参数值的解析失败
  • #36762:修复 RFC URI 解析器中相对 URI 的片段解析错误

Web与数据处理

这个版本修的 bug 是真多,下面 5 个是 Web 与数据处理方面的 bug。

  • #36866:服务器发送事件(SSE)现在支持多行注释
  • #36797:JSP 标签处理问题修复
  • #36775:修复 JacksonXmlEncoder.canEncode 对 String 类型的误判
  • #36713:修复缓存资源解析器中的缓存碰撞问题
  • #36698:修复版本化资源解析时意外移除路径元素的问题

Spring 6.x 的时代结束了

这次发布,还有一个重要提醒,那就是 Spring 6.x 的时代结束了。Spring Framework 6.2.19 是 Spring 6.x 的最后一个公开版本。

根据 Spring 支持政策整理如下表格。

版本发布日期OSS支持截止商业支持截止
7.02025 年 11 月2027 年 6 月2028 年 6 月
6.22024 年 11 月2026 年 6 月 30 日2032 年 6 月
6.12023 年 11 月2025 年 6 月(已结束)2026 年 6 月
6.02022 年 11 月2024 年 6 月(已结束)2025 年 8 月

这意味着,仍在使用 Spring 6.x 的企业,社区支持窗口仅剩不到一个月。6 月 30 日后,将无安全补丁,Spring 6 将不再获得公开安全更新。合规风险方面,PCI DSS、HIPAA、GDPR 等框架要求使用受支持软件,EOL 版本将成为审计缺陷;会形成新的技术债务,新 JDK 版本(如 Java 26+)和生态系统工具的兼容性将逐渐丧失。

结语

Spring Framework 7.0.8 的发布不仅是一次常规维护更新,更是 Spring 生态安全态势的集中体现。16 个 CVE 的修复、SpEL 安全加固、以及对 JPA 4.0/Hibernate 8.0 的兼容性准备,都在告诉我们框架安全没有终点,只有持续的演进

Spring 6.x 应该是有一大波巨大的用户群的,现在它的落幕,也是另一种方式推着我们前进!

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

本文原文出处:业余草: » Spring 6.x 的时代落幕了,16 个漏洞、23 个 Bug 修复的 Spring 7.0.8 发布了