漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

admin 2022年4月1日23:50:16评论89 views字数 1779阅读5分55秒阅读模式
漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

 01 漏洞概况 


近日,微步在线获取到 Spring Core 远程代码执行漏洞事件 0day 相关漏洞情报,攻击者可以利用该漏洞实现远程代码执行。根据微步在线的安全云,目前已经监测到有僵尸网络利用该漏洞进行扫描探测,攻击者会随时利用该漏洞进行进一步的攻击行为,我们建议相关政企单位引起重视,排查受影响的资产并参考官方补丁尽快修复。

此次受影响版本如下:

Spring

是否受影响

低于5.3.18和5.2.20

02 漏洞评估 

公开程度:已出现在野利用

利用条件:无权限要求

交互要求:0-click

漏洞危害:高危、远程代码执行

影响范围:Spring

03 漏洞分析 


1.Spring参数绑定造成的变量覆盖问题

这里不展开'Spring'中自动参数绑定造成的变量覆盖问题,具体的原理可以参照参考链接[1][2]。'Spring'中变量覆盖漏洞的利用方式是修改'Class'属性中的'classLoader'相关信息,但正常情况下开发人员不会在'POJO'中添加'Class'的属性,而在'Spring'框架中使用了'Intropector.getBeanInfo()`来获取'POJO'的属性,'Intropector.getBeanInfo()'有多种实现方式,如下所示:

漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用
'Spring'最终调用的代码如下所示:
漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用
直接使用了'Intropector.getBeanInfo(Class<T>beanClass)',这个方法会导致在获取对象信息的时候会包含一个'Class'属性。如下图所示:
漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用
但如果使用'Intropector.getBeanInfo(Class<?>beanClass,Class<?> stopClass)'的方式就不会包含'class'属性,如下所示:
漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用
而众所周知的是,这个漏洞场景存在已久,Spring官方也在不停的修复该漏洞的利用方式,例如过滤Class中的classLoader[1],最新版的修复方式如下所示:
漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用
虽然过滤'classLoader'的方式能够有效的阻止一定的攻击,但使用'stopClass'的参数应该更能从根本上解决问题,可能是'Spring'框架为了功能牺牲了一定的安全性。这使得该漏洞虽然依然存在,但已经无法有效利用了,而'JDK9+'提供的'Module'新特性绕过这个修复方式。
2.JDK9+新特性绕过
'Spring'的修复方式首先判断'beanClass'是不是'java.lang.Class'类型,'Spring'的这种修复方式是默认只有'java.lang.Class'类才具有被利用的价值。但'JDK9+'提出的新类型'java.lang.Module'中同样具有'classLoader'的信息,可以造成变量覆盖从而实现攻击。如下图所示:
漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用
'java.lang.Module'其实和'java.lang.Class'的功能相同,前者用于记录'Module'的相关信息,后者用于记录'class'的相关信息,这样才能使用反射去获取一些信息。

04 在野利用捕获情况 

30号晚,微步在线研究响应中心通过蜜罐捕获到Spring-core RCE漏洞攻击,发现僵尸网络的IP正通过刚爆发的Spring-core RCE漏洞传播:

漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

查询微步情报社区发现,IP37.239.76.108 存在有大量的扫描、攻击行为 :

漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

同样的IP 141.255.150.72 曾经是Bladabindi僵尸网络的通信C2:

漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

05 时间线 

2022.3.29 微步捕获该漏洞在野利用相关情报

2022.3.30 微步蜜罐捕获在野利用

2022.3.31 Spring官方发布漏洞修复建议公告信息

2022.4.1   微步发布漏洞公告

06 官方通告 

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

07 参考链接 

[1] http://rui0.cn/archives/1158
[2] https://www.inbreak.net/archives/377

08 IOC 

37.239.76.108 
141.255.150.72

漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

点击下方名片,关注我们

第一时间为您推送最新威胁情报


阅读原文,可加入粉丝群~

原文始发于微信公众号(微步在线研究响应中心):漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月1日23:50:16
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   漏洞公告 | Spring Core 远程代码执行漏洞已出现在野利用http://cn-sec.com/archives/861940.html

发表评论

匿名网友 填写信息