就在昨天,我的同事突然问我:你在XX项目里的代码用 Spring 框架了吗?我看到这条消息的时候还是一头雾水(内心:我这个项目在搭建的时候用的是 Spring Boot,那肯定用到了 Spring 框架呀),我突然想到了前阵子刚发生的 Log4j 漏洞,心里突然一颤… 于是我给他回复:用到 Spring 框架了,是出什么漏洞了吗?紧接着,看了他给我回复的消息后便印证了我的猜测,果然是 Spring 框架出现漏洞了
万幸的是本次漏洞和我没什么关系,我是 Java8 的忠实爱好者,完美的规避了本次漏洞的影响,不过还是引起了我的好奇心,决定尝一尝 Spring 的瓜甜不甜
我果断打开了百度,输入“Spring 框架漏洞”关键字后敲下了回车键,准备安安稳稳的吃个瓜,但是查询结果并不尽如人意
于是我打开了国家信息安全漏洞共享平台,果然不出所料,CNVD(国家信息安全漏洞共享平台)发布了 Spring 框架远程命令执行漏洞的公告(CNVD-2022-23942)。
漏洞描述
Spring框架(Framework)是一个开源的轻量级J2EE应用程序开发框架,提供了IOC、AOP及MVC等功能,解决了程序人员在开发中遇到的常见问题,提高了应用程序开发便捷度和软件系统构建效率。2022年3月30日,CNVD平台接收到蚂蚁科技集团股份有限公司报送的Spring框架远程命令执行漏洞。由于Spring框架存在处理流程缺陷,攻击者可在远程条件下,实现对目标主机的后门文件写入和配置修改,继而通过后门文件访问获得目标主机权限。使用Spring框架或衍生框架构建网站等应用,且同时使用JDK版本在9及以上版本的,易受此漏洞攻击影响。CNVD对该漏洞的综合评级为“高危”。
漏洞影响范围
漏洞影响的产品版本包括:版本低于5.3.18和5.2.20的 Spring 框架或其衍生框架构建的网站或应用。
如果有些小伙伴不幸中招了,那么该如何解决本次的漏洞呢?我们可以从 Spring 官网找到答案
Spring 官网地址:https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement
我们可以在 Spring 官网看到更加详细的漏洞描述,首先它为我们指出了如何判断自己的项目是否中招(本人英语水平相当有限,只能翻译个大概,各位小伙伴见笑了)
看到这我就可以确定了,这次出现的 Spring 漏洞和上次的 Log4j2 漏洞相比,只能说是小巫见大巫,完全不一个重量级~ 估计 “在JDK 9 或更高版本上运行” 这一条件就有很多小伙伴都不满足,小伙伴们也可以放心啦
如果真的不幸中招了,Spring 官方也给我们提供了几个有效的解决办法
这次的 Spring 的漏洞再次提醒我们:“千万不要随意升级 JDK 版本!!”
本人经验有限,有些地方可能讲的没有特别到位,如果您在阅读的时候想到了什么问题,欢迎在评论区留言,我们后续再一一探讨
希望各位小伙伴动动自己可爱的小手,来一波点赞+关注 (✿◡‿◡) 让更多小伙伴看到这篇文章~ 蟹蟹呦(●’◡’●)
如果文章中有错误,欢迎大家留言指正;若您有更好、更独到的理解,欢迎您在留言区留下您的宝贵想法。
你在被打击时,记起你的珍贵,抵抗恶意;
你在迷茫时,坚信你的珍贵,抛开蜚语;
爱你所爱 行你所行 听从你心 无问东西