Spring Security 安全性公告

CVE-2021-22112:在單個請求中多次變更 SecurityContext 可能無法儲存

| 2021 年 2 月 19 日 | CVE-2021-22112

描述

Spring Security 5.4.0 至 5.4.3、5.3.0.RELEASE 至 5.3.8.RELEASE、5.2.0.RELEASE 至 5.2.8.RELEASE 以及舊版不受支援的版本,如果在單個請求中變更 SecurityContext 超過一次,可能無法儲存。如果開發人員在滿足以下兩個條件的情況下,在單個請求中變更 SecurityContext 兩次,則 SecurityContext 可能無法儲存到 HttpSession:首先,開發人員必須在 HttpResponse 提交之前變更 SecurityContext,然後 HttpResponse 必須在 SecurityContextPersistenceFilter 完成之前提交。然後開發人員必須在 SecurityContextPersistenceFilter 完成之前再次嘗試變更 SecurityContext。惡意使用者無法導致此錯誤發生(必須由程式設計造成)。但是,如果應用程式的意圖僅是允許使用者在應用程式的一小部分中以提升的權限執行,則可以利用此錯誤將這些權限擴展到應用程式的其餘部分。

受影響的 Spring 產品和版本

  • Spring Security
    • 5.4.0 至 5.4.3
    • 5.3.0.RELEASE 至 5.3.8.RELEASE
    • 5.2.0.RELEASE 至 5.2.8.RELEASE

緩解措施

受影響版本的用戶應應用以下緩解措施:5.4.x 用戶應升級到 5.4.4,5.3.x 用戶應升級到 5.3.9.RELEASE,5.2.x 用戶應升級到 5.2.9.RELEASE。舊版本應升級到支援的分支。已修復此問題的版本包括

  • Spring Security
    • 5.4.4
    • 5.3.9.RELEASE
    • 5.2.9.RELEASE

鳴謝

此問題由 CloudBees, Inc. 的 Daniel Beck、Jeff Thompson、Jesse Glick 和 Wadeck Follonier 發現並負責地報告。

參考文獻

歷史記錄

  • 2021-02-19:更正了已修復的版本
  • 2021-02-19:發布了初始漏洞報告。

搶先一步

VMware 提供培訓和認證,以加速您的進度。

瞭解更多

取得支援

Tanzu Spring 在一個簡單的訂閱中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位檔案。

瞭解更多

即將舉行的活動

查看 Spring 社群中所有即將舉行的活動。

查看全部