查看原文
其他

Spring Boot 年前最后一个版本发布,一招解决 Log4j2、Logback 漏洞!!

栈长 Java技术栈 2023-03-26

点击关注公众号,Java干货及时送达

Spring Boot 2.6.3 发布

大家好,我是栈长。

最近,Spring Boot 又双叒叕更新了:

可以看到,Spring Boot 现在目前维护了 4 条版本线,但本次只更新了两个版本:

  • 2.6.3
  • 2.5.9

这可能是春节前的最后一次发版了。

关注公众号Java技术栈的小伙伴应该都知道,在前些天的《终于!Spring Boot 发布最新版,一招解决 Log4j2 核弹级漏洞!》一文中,栈长有解读到,为了应对及解决 Log4j2 的核弹级漏洞,以及 Logback 漏洞,Spring Boot 发布了最新版 v2.6.2。

可谁也没想到,后面 Log4j2 又搞出了漏洞,Log4j v2.17.1 横空出世,没完没了。。

最新 JDK 版本对应的 Log4j2 版本如下:

JDK 版本Log4j2 版本
Java 8+v2.17.1
Java 7v2.12.4
Java 6v2.3.2

另外,Logback 也没有消停,最新版本已经升级到了 Logback v 1.2.10

所以,这次的 Spring Boot 发版除了日常的 bug 修复、文档优化改进。依赖升级等,大家还需要重点关注 Log4j2 & Logback 的漏洞版本升级:


这两个主流日志框架版本都已经升级到了最新安全版本了,没少折腾人,这次是终于尘埃落定了。今天通知到大家这个更新,有需要的可以升级处理。

详细的可以参考:

https://github.com/spring-projects/spring-boot/releases/tag/v2.6.3

https://github.com/spring-projects/spring-boot/releases/tag/v2.5.9

Log4j2 漏洞终极方案

1、Spring Boot 项目

大家如果在用 2.6.x 和 2.5.x 版本线的,只需要升级到最新的 2.6.3, 2.5.9 即可。

依赖示例:

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-parent</artifactId>
  <version>2.6.3</version>
  <type>pom</type>
</dependency>

这两个版本都会升级到最新安全版本:

  • Log4j v2.17.1
  • Logback v1.2.10

Spring Boot 2.4.x 及以下的版本线不受支持,只需要修改 Log4j2 的版本号即可:

<properties>
  <log4j2.version>2.17.1</log4j2.version>
</properties>

另外,不想升级 Spring Boot 主版本的也可以这样做。

Spring Boot 基础就不介绍了,推荐下这个实战教程(含示例源码):

https://github.com/javastacks/spring-boot-best-practice

2、 非 Spring Boot 项目

最新的 Maven 项目依赖:

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.17.1</version>
</dependency>

Maven 基础也不介绍了,栈长之前写了一堆,我都在公众号Java技术栈菜单中整理好了,不会的可以参考阅读。

Gradle 项目的升级也是同理,略,其他如果没用 Maven/ Gradle 的老项目可以直接替换包。

Log4j2 最新正式版本下载:

https://logging.apache.org/log4j/2.x/download.html

Spring Boot 版本支持路线图

再来看下最新的 Spring Boot 版本支持路线图:


可以看到,绿色的是正在继续维护的,是安全的,橙色的只提供商业支持了,灰色的不提供任何支持了。

所以 Spring Boot 2.5+ 是最低要求的版本了,另外,Spring Boot 2.7.x 还有四个月左右也要和我们见面了,到时 2.5.x 又是下一个结束免费支持的版本线,跟不上了。。

所以,有条件的,直接上 2.6.x 得了,即使如此,随着时间的推移,到了年底,2.6.x 也要 Over...


最后,如果你还没用过 Spring Boot,今天我就送你一份 《Spring Boot 学习笔记》这个很全了,包括底层实现原理及代码实战,非常齐全,助你快速打通 Spring Boot 的各个环节。

往期 Spring Boot 教程及示例源码整理:

https://github.com/javastacks/spring-boot-best-practice

最后,如果你想关注和学习最新、最主流的 Java 技术,可以持续关注公众号Java技术栈,公众号第一时间推送。

我也将主流 Java 面试题和参考答案都整理好了,在公众号后台回复关键字 "面试" 进行刷题。

版权声明!!!

本文系公众号 "Java技术栈" 原创,转载、引用本文内容请注明出处,抄袭、洗稿一律投诉侵权,后果自负,并保留追究其法律责任的权利。








微信官宣:一大波新年红包封面来了!
2021 年发生的 10 件技术大事!!
23 种设计模式实战(很全)
换掉 Log4j2!tinylog 横空出世一款基于 Spring Boot 的神仙接私活项目劲爆!Java 协程要来了
重磅官宣:Redis 对象映射框架来了!!推荐一款代码神器,代码量至少省一半!程序员精通各种技术体系,45岁求职难!
重磅!Spring Boot 2.6 正式发布
Spring Boot 学习笔记,这个太全了!



关注Java技术栈看更多干货



获取 Spring Boot 实战笔记!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存