CVE-2022-31690:spring-security-oauth2-client 中的許可權提升

| 2022 年 10 月 31 日 | CVE-2022-31690

描述

Spring Security 5.7版本(5.7.5之前)和5.6版本(5.6.9之前)以及更舊的不受支援版本在某些條件下可能容易受到許可權提升的影響。惡意使用者或攻擊者可以修改客戶端(透過瀏覽器)向授權伺服器發起的請求,這可能導致在隨後的批准過程中發生許可權提升。如果授權伺服器在隨後向令牌端點請求訪問令牌時,以包含空範圍列表的OAuth2訪問令牌響應(根據RFC 6749,第5.1節)進行響應,則可能發生這種情況。

此漏洞暴露了滿足以下所有要求的應用程式

  • 扮演登入客戶端的角色(例如http.oauth2Login()
  • 在客戶端應用程式中使用一個或多個授權規則,其中許可權從授權範圍對映(例如anyRequest().hasAuthority("SCOPE_message.write")
  • 註冊一個以空範圍列表響應的授權伺服器(根據RFC 6749,第5.1節)

此漏洞**不會**暴露以下應用程式

  • 僅扮演資源伺服器的角色(例如http.oauth2ResourceServer()
  • 在客戶端應用程式中使用授權規則,其中許可權未從授權範圍對映(例如anyRequest().hasAuthority("ROLE_USER")

受影響的 Spring 產品和版本

  • Spring Security
    • 5.7 至 5.7.4
    • 5.6 至 5.6.8
    • 較舊的、不受支援的版本也受到影響

緩解措施

受影響版本的使用者應採取以下緩解措施:Spring Security 5.7 升級到 5.7.5,Spring Security 5.6 升級到 5.6.9。更舊的版本應升級到受支援的分支。無需其他緩解措施。已修復此問題的版本包括

  • Spring Security
    • 5.7.5
    • 5.6.9

致謝

此問題由 Apache Software Foundation 的 Tobias Soloschenko (@klopfdreh) 發現並負責任地報告。

參考資料

歷史

  • 2022-10-31: 初始漏洞報告發布。

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有