「安全狗安全通告」Spring框架远程代码执行漏洞

近日,安全狗应急响应中心监测到Spring Framework存在远程代码执行漏洞。漏洞编号CVE-2022-22965。

漏洞描述

Spring Framework是一个开源应用框架,旨在降低应用程序开发的复杂度。它是轻量级、松散耦合的。它具有分层体系结构,允许用户选择组件,同时还为 J2EE 应用程序开发提供了一个有凝聚力的框架。

使用Spring Framework在 JDK 9 及以上版本环境下处理恶意数据时,可能会造成远程代码执行。此漏洞POC、技术细节及EXP已公开,经过安全狗研究人员研判,此漏洞POC有效

安全狗复现

安全狗复现效果如下:

安全通告信息

漏洞名称

Spring框架远程代码执行漏洞

漏洞影响版本

Spring Framework < 5.3.18

Spring Framework < 5.2.20

且其衍生产品

JDK ≥ 9

JRE ≥ 9

漏洞危害等级

高危

厂商是否已发布漏洞补丁

版本更新地址

https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement

安全狗总预警期数

214

发布者

安全狗海青实验室

处置措施

【安全版本

Spring Framework == 5.3.18

Spring Framework == 5.2.20

目前,Spring官方已发布漏洞修复版本,请用户及时更新至最新版本。

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

【漏洞排查

JDK版本号排查

在业务系统的运行服务器上,Windows操作系统可在运行中执行cmd打开命令行,Linux操作系统可打开控制台窗口。

执行“java -version”命令查看运行的JDK版本,如果版本号小于9,则不受此漏洞影响。

Spring框架使用情况排査

 1、如果业务系统项目以war包形式部署,按照如下的步骤进行判断。

    1)解压war包:将war文件的后级修改成 .zip文件。

    2)在解压缩目录下搜索是否存在spring-beans-*.jar格式的文件(例如spring-beans-5.3.16.jar),如存在则说明业务系统使用了 Spring框架进行开发。

    3)如果spring-beans-*.jar文件不存在,则在解压缩目录下搜索CachedlntrospectionResults.class文件是否存在,如存在则说明业务系统使用了 Spring框架进行开发。

2、如果业务系统项目以jar包形式独立运行,按照如下的步骤进行判断。

    1)解压jar包:将jar文件的后缀修改成zip,解压zip 文件。

    2)在解压缩目录下搜索是否存在spring-beans-*.jar格式的jar文件(例如spring-beans-5.3.16.jar),如存在则说明业务系统使用了 Spring框架进行开发。

    3)如果spring-beans-*.jar文件不存在,则在解压缩目录下搜索CachedIntrospectionResults.class文件是否存在,如果存在则说明业务系统使用了 Spring框架进行开发。

【临时缓解方案

用户可通过安全狗云御WAF等网络防护设备上,根据实际部署业务的流量情况,实现对“class.* ” ,“Class.*”,“*.class.*”,“*.Class.*”等字符串的规则过滤,并在部署过滤规则后,对业务运行情况进行测试,避免产生额外影响。

注意:其中流量特征“class.*”对大小写不敏感。

参考链接

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

https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值