主頁 > 後端開發 > Spring Boot 年前最后一個版本發布,一招解決 Log4j2、Logback 漏洞!!

Spring Boot 年前最后一個版本發布,一招解決 Log4j2、Logback 漏洞!!

2022-01-23 06:09:10 後端開發

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 7 v2.12.4
Java 6 v2.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技術堆疊" 原創,轉載、參考本文內容請注明出處,抄襲、洗稿一律投訴侵權,后果自負,并保留追究其法律責任的權利,

近期熱文推薦:

1.1,000+ 道 Java面試題及答案整理(2022最新版)

2.勁爆!Java 協程要來了,,,

3.Spring Boot 2.x 教程,太全了!

4.Spring Boot 2.6 正式發布,一大波新特性,,

5.《Java開發手冊(嵩山版)》最新發布,速速下載!

覺得不錯,別忘了隨手點贊+轉發哦!

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/419002.html

標籤:Java

上一篇:Spring Boot Starter 和 ABP Module

下一篇:返回列表

標籤雲
其他(135864) Python(24220) JavaScript(15072) Java(14734) C(11146) 區塊鏈(8215) AI(6884) 基礎類(6313) MySQL(5224) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4203) Linux(4116) PHP(3814) C#(3716) 爪哇(3561) html(3374) C語言(3288) C++語言(3117) sql(3024) R(2776) 熊猫(2774) Java相關(2746) 数组(2739) 疑難問題(2699) 反应(2482) 單片機工控(2479) css(2105) 数据框(1968) Web開發(1951) 节点.js(1938) VBA(1919) 網絡通信(1793) 蟒蛇-3.x(1774) 數據庫相關(1767) VB基礎類(1755) .NETCore(1671) ASP.NET(1650) 開發(1646) 系統維護與使用區(1617) C++(1582) 列表(1581) 基礎和管理(1579) json(1568) JavaEE(1566) 安卓(1523) HtmlCss(1518) 專題技術討論區(1515) Windows客戶端使用(1484) 扑(1469) iOS(1432) 查询(1408) .NET技术(1402) 打字稿(1376) Unity3D(1366) VCL組件開發及應用(1353) sql-server(1287) Qt(1283) 细绳(1226) HTML(CSS)(1220)

熱門瀏覽
  • 【C++】Microsoft C++、C 和匯編程式檔案

    ......

    uj5u.com 2020-09-10 00:57:23 more
  • 例外宣告

    相比于斷言適用于排除邏輯上不可能存在的狀態,例外通常是用于邏輯上可能發生的錯誤。 例外宣告 Item 1:當函式不可能拋出例外或不能接受拋出例外時,使用noexcept 理由 如果不打算拋出例外的話,程式就會認為無法處理這種錯誤,并且應當盡早終止,如此可以有效地阻止例外的傳播與擴散。 示例 //不可 ......

    uj5u.com 2020-09-10 00:57:27 more
  • Codeforces 1400E Clear the Multiset(貪心 + 分治)

    鏈接:https://codeforces.com/problemset/problem/1400/E 來源:Codeforces 思路:給你一個陣列,現在你可以進行兩種操作,操作1:將一段沒有 0 的區間進行減一的操作,操作2:將 i 位置上的元素歸零。最終問:將這個陣列的全部元素歸零后操作的最少 ......

    uj5u.com 2020-09-10 00:57:30 more
  • UVA11610 【Reverse Prime】

    本人看到此題沒有翻譯,就附帶了一個自己的翻譯版本 思考 這一題,它的第一個要求是找出所有 $7$ 位反向質數及其質因數的個數。 我們應該需要質數篩篩選1~$10^{7}$的所有數,這里就不慢慢介紹了。但是,重讀題,我們突然發現反向質數都是 $7$ 位,而將它反過來后的數字卻是 $6$ 位數,這就說明 ......

    uj5u.com 2020-09-10 00:57:36 more
  • 統計區間素數數量

    1 #pragma GCC optimize(2) 2 #include <bits/stdc++.h> 3 using namespace std; 4 bool isprime[1000000010]; 5 vector<int> prime; 6 inline int getlist(int ......

    uj5u.com 2020-09-10 00:57:47 more
  • C/C++編程筆記:C++中的 const 變數詳解,教你正確認識const用法

    1、C中的const 1、區域const變數存放在堆疊區中,會分配記憶體(也就是說可以通過地址間接修改變數的值)。測驗代碼如下: 運行結果: 2、全域const變數存放在只讀資料段(不能通過地址修改,會發生寫入錯誤), 默認為外部聯編,可以給其他源檔案使用(需要用extern關鍵字修飾) 運行結果: ......

    uj5u.com 2020-09-10 00:58:04 more
  • 【C++犯錯記錄】VS2019 MFC添加資源不懂如何修改資源宏ID

    1. 首先在資源視圖中,添加資源 2. 點擊新添加的資源,復制自動生成的ID 3. 在解決方案資源管理器中找到Resource.h檔案,編輯,使用整個專案搜索和替換的方式快速替換 宏宣告 4. Ctrl+Shift+F 全域搜索,點擊查找全部,然后逐個替換 5. 為什么使用搜索替換而不使用屬性視窗直 ......

    uj5u.com 2020-09-10 00:59:11 more
  • 【C++犯錯記錄】VS2019 MFC不懂的批量添加資源

    1. 打開資源頭檔案Resource.h,在其中預先定義好宏 ID(不清楚其實ID值應該設定多少,可以先新建一個相同的資源項,再在這個資源的ID值的基礎上遞增即可) 2. 在資源視圖中選中專案資源,按F7編輯資源檔案,按 ID 型別 相對路徑的形式添加 資源。(別忘了先把檔案拷貝到專案中的res檔案 ......

    uj5u.com 2020-09-10 01:00:19 more
  • C/C++編程筆記:關于C++的參考型別,專供新手入門使用

    今天要講的是C++中我最喜歡的一個用法——參考,也叫別名。 參考就是給一個變數名取一個變數名,方便我們間接地使用這個變數。我們可以給一個變數創建N個參考,這N + 1個變數共享了同一塊記憶體區域。(參考型別的變數會占用記憶體空間,占用的記憶體空間的大小和指標型別的大小是相同的。雖然參考是一個物件的別名,但 ......

    uj5u.com 2020-09-10 01:00:22 more
  • 【C/C++編程筆記】從頭開始學習C ++:初學者完整指南

    眾所周知,C ++的學習曲線陡峭,但是花時間學習這種語言將為您的職業帶來奇跡,并使您與其他開發人員區分開。您會更輕松地學習新語言,形成真正的解決問題的技能,并在編程的基礎上打下堅實的基礎。 C ++將幫助您養成良好的編程習慣(即清晰一致的編碼風格,在撰寫代碼時注釋代碼,并限制類內部的可見性),并且由 ......

    uj5u.com 2020-09-10 01:00:41 more
最新发布
  • Spring Boot 年前最后一個版本發布,一招解決 Log4j2、Logback 漏

    Spring Boot 2.6.3 發布 大家好,我是堆疊長。 最近,Spring Boot 又雙叒叕更新了: 可以看到,Spring Boot 現在目前維護了 4 條版本線,但本次只更新了兩個版本: 2.6.3 2.5.9 這可能是春節前的最后一次發版了。 關注公眾號Java技術堆疊的小伙伴應該都知道 ......

    uj5u.com 2022-01-23 06:09:10 more
  • Spring Boot Starter 和 ABP Module

    它整合了這個模塊需要的依賴庫; 提供對模塊的配置項給使用者; 提供自動配置類對模塊內的Bean(組件)進行自動裝配;它有效的降低了專案開發程序的復雜程度,對于簡化開發操作有著非常好的效果; 相關鏈接: Spring Boot: https://spring.io/projects/spring-bo ......

    uj5u.com 2022-01-23 06:09:00 more
  • Java網路編程

    一、概述 計算機網路 計算機網路是指將地理位置不同的具有獨立功能的多臺計算機及其外部設備,通過通信線路連接起來,在網路作業系統,網路管理軟體及網路通信協議的管理和協調下,實作資源共享和資訊傳遞的計算機系統 網路編程的目的: 無限電臺…傳播交流資訊,資料交換,通信 二、網路通信的要素 如何實作網路的通 ......

    uj5u.com 2022-01-23 06:08:54 more
  • spring的事務是如何回滾的、事務傳播?

    實際上也是問的這個問題 spring的事務管理是如何實作的?總: spring的事務是由aop來實作的,首先要生成具體的代理物件,然后按照aop的整套流程來執行具體的操作邏輯,正常情況下要通過通知來完成核心功能,但是事務不是通過通知來實作的,而是通過一個TransactionInterceptor來 ......

    uj5u.com 2022-01-23 06:08:47 more
  • 里氏替換原則

    1.里氏替換原則的定義 里氏替換原是繼承復用的基礎,它反映了基類與子類之間的關系,是對開閉原則的補充,是對實作抽象化的具體步驟的規范。 所有參考基類(父類)的地方必須能透明地使用其子類的物件。 2.里氏替換原則的作用 里氏替換原則的主要作用如下。 里氏替換原則是實作開閉原則的重要方式之一。 它克服了 ......

    uj5u.com 2022-01-23 06:07:39 more
  • 動態代理jdk的Proxy與spring的CGlib

    1. 為什么要使用動態代理? 動態代理:在不改變原有代碼的情況下上進行物件功能增強 使用代理物件代替原來的物件完成功能 進而達到拓展功能的目的 2.JDK Proxy 動態代理面向介面的動態代理 特點: 一定要有介面和實作類的存在 代理物件增強的是實作類 在實作介面的方法重寫的方法 生成的代理物件只 ......

    uj5u.com 2022-01-23 06:07:35 more
  • 【SpringCloud-Alibaba系列教程】2.搭建用戶微服務模塊

    本節是陸續搭建系統和編碼的開始,我們會優先完成一個基礎工程的創建。一般在互聯網企業這部分作業可能不需要反復處理,只需要在承接產品需要后使用腳手架或者直接復制以往工程就可以創建現有需要使用的工程了。例如 Spring 官網也提供了創建工程的腳手架,https://start.spring.io Spr ......

    uj5u.com 2022-01-23 06:07:31 more
  • C primer plus筆記之初識C語言

    初識C語言 --本文參考書籍: Stephen Prata的《C Primer Plus》 ##前言 C 語言是一門抽象的、面向程序的語言,C 語言廣泛應用于底層開發,C 語言在計算機體系中占據著不可替代的作用,可以說 C 語言是編程的基礎,也就是說,不管你學習任何語言,都應該把 C 語言放在首先要 ......

    uj5u.com 2022-01-23 06:06:43 more
  • 如何防止file:///中的html訪問互聯網?

    背景場景是我想給我的用戶一個 javascript,他們可以用它來分析他們敏感的私人資料,我希望他們感到安全,這些資料不會被發送到互聯網。最初,我想我只是將它作為一個帶有 embeded...

    uj5u.com 2022-01-23 05:52:44 more
  • AndroidTV應用被拒絕,未提供更多詳細資訊/門票被忽略

    我的應用程式多次被 Google Play 拒絕,原因如下:取決于選單 您的應用程式依賴于“開始”、“選擇”或“選單”按鈕來訪問選單。Android TV 控制器不支持“選擇”、“開始”或...

    uj5u.com 2022-01-23 04:03:02 more