在一个常见的后台服务场景里,团队用Spring Security的方法级权限控制来保护关键接口,比如用注解限制只有特定角色才能调用。此时如果底层对方法注解的识别出现偏差,就会变成权限规则写了但没有被正确执行。CVE-2025-41249就是这一类问题,根因在Spring Framework的注解识别机制,主要会影响到基于方法注解做授权判断的链路。
一、CVE-2025-41249会影响哪些功能
这个漏洞影响的不是所有Spring应用,而是集中在方法级安全注解的识别与授权决策上,触发条件也比较明确。
1、会影响方法级权限控制的注解生效
当你启用了Spring Security的方法安全能力,并且把安全注解放在带泛型继承层级的方法上时,Spring Framework可能无法正确解析这些方法注解,进而影响授权决策是否按预期执行。
2、主要影响的能力入口是 EnableMethodSecurity
官方说明里明确指出,应用在使用Spring Security的 EnableMethodSecurity时可能受影响;如果没有启用该能力入口,一般不在影响范围内。
3、影响条件集中在泛型父类或泛型接口的方法注解
如果你的安全注解不是写在具体实现类的方法上,而是写在泛型父类或泛型接口的层级方法上,并且该层级涉及参数化父类型与无界泛型,才更接近该漏洞描述的触发面。
4、不受影响的典型情况也很明确
官方给出两条不受影响条件:未使用 EnableMethodSecurity,或没有把安全注解用在泛型父类与泛型接口的方法上。你可以先用这两条快速做第一轮筛查。
二、CVE-2025-41249漏洞升级到哪个版本可以解决
官方给出了受影响版本区间与对应修复版本,你只需要把当前spring-framework版本对到对应分支即可。
1、如果你在用Spring Framework 6.2.x
受影响范围是6.2.0到6.2.10,修复版本是6.2.11,开源仓库可用。
2、如果你在用Spring Framework 6.1.x
受影响范围是6.1.0到6.1.22,修复版本是6.1.23,但该修复以商业版本提供,开源支持已结束。
3、如果你在用Spring Framework 5.3.x
受影响范围是5.3.0到5.3.44,修复版本是5.3.45,同样以商业版本提供,开源支持已结束。
4、如果你还在用Spring Framework 6.0.x
官方标注该分支已不再支持,CVE-2025-41249在该分支没有可用修复版本。
三、按Spring Boot体系升级时怎么选版本更稳
很多团队实际是跟着Spring Boot升级依赖管理,而不是单独锁定spring-framework版本,所以你可以用下面口径把升级路径说清楚。
1、开源用户优先把Boot升级到带6.2.11的版本线
Spring官方发布信息提到Spring Framework 6.2.11会随Spring Boot 3.4.10与3.5.6一起发布,因此在3.4与3.5线的用户可以优先升级到这些版本或更高的同线版本来获得修复。
2、如果你处在旧的Boot线但又需要修复
官方给出的口径是商业客户可使用Spring Boot Hotfix版本2.7.29.1、3.2.18.1、3.3.15.1来获得相关修复,但这些版本在商业制品库中提供。
3、落地排查建议先做两件小事
先确认项目是否启用了 EnableMethodSecurity,再确认关键权限注解是否写在泛型父类或泛型接口的方法上,两者同时存在时优先安排升级窗口,并把回归重点放在方法级鉴权与边界接口上。
总结
CVE-2025-41249影响点集中在Spring Framework的方法注解识别机制,当它被用于授权决策时会带来方法级权限控制偏差,官方明确指出与 EnableMethodSecurity的使用相关。修复上,6.2.x开源用户升级到6.2.11即可,6.1.x与5.3.x需要对应的商业修复版本6.1.23与5.3.45,6.0.x分支无修复版本;如果你随Spring Boot升级,3.4.10与3.5.6会带入6.2.11修复,旧线可参考官方给出的商业Hotfix版本口径。