学会辨识「漏洞炒作」你就比别人强!

点击关注强哥,查看更多精彩文章呀

哈喽,大家好,我是强哥。

昨天,最受欢迎的开源轻量级 Java 框架 Spring 被曝存在高危的 RCE(远程控制设备) 零日漏洞 ,北京大学计算中心、外媒 praetorian 、 bleepingcomputer 等站点对该漏洞进行了报道。

炒作

强哥也看到了很多媒体疯狂报道此事,根据网上疯传的介绍,该 RCE 漏洞源于 Spring 框架核心的 SerializationUtils#dserialize 方法,该方法基于 Java 的序列化与反序列机制,可导致远程代码执行 (RCE),使用 JDK9 及以上版本皆有可能受到影响。

如果确实存在,那么这个 Spring 框架 RCE 漏洞的影响将远超此前的 Log4j 或 Heartbleed ,但强哥在翻了一整天,也没有看到谁能真正复现此漏洞(没有完整的 Poc)。所有内容千篇一律:

  1. WAF临时策略
  1. 临时缓解措施

GitHub 上倒是有很多命名为 Spring core RCE 的新仓库,但也基本都是“懂的都懂”的谜语描述,没有真正的干货内容。

不过,强哥也看到好多原来披露漏洞的文章,现在页面404了。

另一种声音

具体404的原因可能和下面的描述有关。

早在 2 月 19 日 Spring 框架的仓库就出现过对该 SerializationUtils 方法的讨论,开发者 ledoyen 就指出:基于 Java 的序列化机制,SerializationUtils#dserialize 可能导致 RCE 远程代码执行漏洞,因此他提出了弃用 SerializationUtils#dserialize 的 PR #28075 :

image.png

有人询问在该 PR 下询问“SerializationUtils#dserialize 是否应该作为漏洞报道”时, ledoyen 也进行解释:

SerializationUtils#dserialize本身不是漏洞,使用此工具处理用户输入数据可能会导致 CVE,但该方法在内部作为缓存结果拦截器( CacheResultInterceptor) 使用的话,则不会导致任何漏洞。

目前, SerializationUtils#dserialize在 Spring Framework 6.0 中已弃用,而对于 5.3.x 版本,则是向 Javadoc 中添加针对 SerializationUtils 工具类的警告,以提高用户的警觉意识。

到底有没有漏洞

首先我们来看下GitHub上在spring-framework上提出漏洞的issue吧:

我们可以看到,目前该issue的状态已经被设置为close-invalid,不过到底是否是漏洞,作者也有让提出该issue的人将漏洞提到https://spring.io/security-policy上。而具体的漏洞是否存在,还是需要等待后续官方披露。

当然,我们要怎么确定到底官方是否公布了漏洞呢?

Spring官方的具体漏洞披露地址如下:

https://tanzu.vmware.com/security

从上可以看出,暂时官方博客的最新漏洞公告是 CVE-2022-22963:Spring 表达式资源访问漏洞 和 CVE-2022-22950:Spring 表达式 DoS 漏洞 ,但这两个漏洞的严重程度都是中等,还未披露网传 Spring 核心框架的 RCE 高危漏洞。

而强哥上篇推文,就可以在这里找到:

感兴趣的小伙伴可以持续关注这个地址,如果确认是漏洞,官方应该会第一时间说明。

强哥有话说

可以说,漏洞问题确实非常容易拉紧人们的神经。就如上次的log4j的漏洞,导致很多人连夜升级版本,而且还是多次。

可是,对于漏洞本身,我们还是需要有足够的辨识能力,如果真的对切身有关,同时有人真的提出了复现漏洞的方式,不妨跟着重现一下,这样,在确认漏洞的同时,自己也能从中学到许多。

后续该漏洞的进展,强哥也会持续跟进。

点击关注强哥,查看更多精彩文章呀

你可能感兴趣的:(学会辨识「漏洞炒作」你就比别人强!)