Spring的最新大瓜你吃到了吗

大家好,我是阿呆,一个不务正业的程序员。

昨晚的Spring大瓜,你们吃到了吗?如果你还不知道,那么赶紧往下看!

大早上在地铁上,像往常一样刷着手机,看看订阅号,看看知乎,看看微博。突然就看到了一个让我精神抖擞的消息:Spring出了一个比上次Log4j更大的漏洞!

什么?不是说 log4j 的漏洞就是见证历史了吗?难道历史这么快就要翻篇了吗?这是搁这叠 buff 呢?

赶紧来看看这是个什么漏洞:

漏洞描述

好家伙,有惊无险啊,原来是 jdk9 及以上的版本才有影响啊。那我就放心了。毕竟我现在用的还是jdk8,可以安心搬砖了。

但是毕竟作为一个技术人员,必须要搞清楚它到底是怎么回事。

所以到公司赶紧奔赴吃瓜一线:Spring的GitHub issue页面

Spring的GitHub issue页面

通过过滤,我们可以看到几个疑似漏洞的两个issue,也就是前两个,我们分别来看一下:

RCE 0 Day

可以说是什么也没有,只说了影响全版本的注入漏洞,随后就被官方结束掉了,并留下了一句话:

如果你想报告一个安全问题,那么请通过这个专用的页面进行报告,抱拳了。

确实没什么有用的信息,我们再来看看另外一个:

issue #28075

可以看到这个PR其实是在2022年2月19号就提出的,大体意思就是SerializationUtils 这个序列化的工具类有点问题,会留下一些口子,建议弃用这个方法。

有趣的是,这个PR里就提到了RCE。从提出开始,官方对这个PR一直有关注,知道昨天被官方合并。同时还对这个工具类的文档进行了一波更新:

文档更新

我们直接来看更新好的文档吧:

反序列化方法docs

大概意思就是说:

这个工具将在 Spring Framework 6.0 中被弃用,因为它使用了 Java 对象序列化,允许任意代码的运行,并以成为许多远程代码执行(RCE)漏洞的来源而闻名。倾向于使用外部工具(可序列化为JSON、XML或任何其他格式),该工具会定期检查和更新来避免 RCE。

从文档上的更新来说,即使是这个东西导致 Spring 出现了 RCE 0day 漏洞,但是目前也并没有修复,只是堵住了未来版本的口子。

当然,至于这个 PR 和 Spring RCE 0day 之间关系到底如何,还得等更详细的信息出来之后再,上述只是我个人的判断。

既然没吃到什么瓜,我们就来看看一些关于这个事情的段子吧。

段子一

段子二

段子三

好了,今天的瓜就吃到这里,关注我的公众号【Coder阿呆】,阅读更多有趣内容!

我是阿呆,一个不务正业的程序员~


 上一篇
又挂了!聊聊分布式系统级联故障 又挂了!聊聊分布式系统级联故障
公司的系统又又又挂了!年终奖彻底没戏了。 回顾公司过去一年,发生了好几次P级事务,最严重的一次对外停止服务整整一下午,超过六小时。 据了解,大部分都是由于某一个服务的某一个节点挂掉,引发连锁反应,最终导致集体宕机。 我们今天就来聊一聊,为什
2022-04-01
下一篇 
做技术的怎么能不知道这两个人! 做技术的怎么能不知道这两个人!
大家好,我是阿呆,一个不务正业的程序员。 今天我们不聊技术,来聊聊两个人。如果你是做技术的,你一定看过这两个人的文章。如果你不是做技术的,我也希望你能看看这两个人的故事,我想一定会有收获的。 那这两个人到底是谁呢?不绕关子了,这两个人就是全
2022-03-29
  目录