【漏洞预警】Spring Framework远程代码执行漏洞


1. 通告信息




近日,安识科技A-Team团队监测到一则 Spring Framework 组件存在远程代码执行漏洞的信息,漏洞威胁等级:严重。

该漏洞是由于 Spring Framework 未对传输的数据进行有效的验证,攻击者可利用该漏洞在未授权的情况下,构造恶意数据进行远程代码执行攻击,最终获取服务器权限。

对此,安识科技建议广大用户及时升级到安全版本,并做好资产自查以及预防工作,以免遭受黑客攻击。

 

2. 漏洞概述




CVE: CVE-2022-22965

简述:Spring 是一个支持快速开发 Java EE 应用程序的框架。它提供了一系列底层容器和基础设施,并可以和大量常用的开源框架无缝集成,可以说是开发 Java EE 应用程序的必备。该漏洞是由于 Spring Framework 未对传输的数据进行有效的验证,攻击者可利用该漏洞在未授权的情况下,构造恶意数据进行远程代码执行攻击,最终获取服务器权限。

 

3. 漏洞危害




攻击者可利用该漏洞在未授权的情况下,构造恶意数据进行远程代码执行攻击,最终获取服务器权限。

 

4. 影响版本




目前受影响的 Spring Framework 的版本:

Spring Framework 5.3.X < 5.3.18

Spring Framework 5.2.X < 5.2.20

注:其他 Spring Framework 旧版本同样会受到影响。

Spring Framework 官方提供

Spring Framework 5.3.18 和 Spring Framework 5.2.20两个安全版本(截止至3月31日)

 

5. 解决方案




一、官方修复建议:

当前 Spring Framework 官方已发布最新版本,建议受影响的用户及时更新升级到最新版本。链接如下:

https://github.com/spring-projects/spring-framework/tags

注:Spring Framework 5.3.18和Spring Framework 5.2.20是 Spring 官方提供的两个安全版本(截止至3月31日)

二、临时修复建议:

该临时修复建议存在一定风险,建议用户可根据业务系统特性审慎选择采用临时修复方案:

需同时按以下两个步骤进行漏洞的临时修复:

1.在应用中全局搜索@InitBinder注解,看看方法体内是否调用dataBinder.setDisallowedFields 方法,如果发现此代码片段的引入,则在原来的黑名单中,添加{"class.*","Class. *","*. class.*", "*.Class.*"}。(注:如果此代码片段使用较多,需要每个地方都追加)

2. 在应用系统的项目包下新建以下全局类,并保证这个类被 Spring 加载到(推荐在Controller 所在的包中添加).完成类添加后,需对项目进行重新编译打包和功能验证测试。并重新发布项目。

 

6. 时间轴




-2022年03月29日 安识科技A-Team团队监测到漏洞公布信息

-2022年03月31日 安识科技A-Team团队根据漏洞信息分析

-2022年04月01日 安识科技A-Team团队发布安全通告



免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。查看原文

为您推荐