CVE-2018-1257: spring-messaging 的 ReDoS 攻擊

高危 | 2018 年 5 月 9 日 | CVE-2018-1257

描述

Spring Framework 5.0.x 版本(5.0.6 之前)、4.3.x 版本(4.3.17 之前)以及更早的不受支援版本,允許應用程式透過 spring-messaging 模組使用簡單的記憶體中 STOMP 代理公開基於 WebSocket 的 STOMP 端點。惡意使用者(或攻擊者)可以向代理構造一條訊息,從而導致正則表示式拒絕服務攻擊。

此漏洞影響滿足以下所有要求的應用程式:

  • 依賴於 spring-messaging 和 spring-websocket 模組。
  • 註冊基於 WebSocket 的 STOMP 端點。
  • 啟用簡單的 STOMP 代理。

受影響的 Spring 產品和版本

  • Spring Framework 5.0 至 5.0.5
  • Spring Framework 4.3 至 4.3.16
  • 更早的不受支援版本也受影響

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 5.0.x 使用者應升級到 5.0.6。
  • 4.3.x 使用者應升級到 4.3.17。
  • 更早版本應升級到受支援的分支。

無需採取其他緩解措施。

請注意,對訊息使用 Spring Security 提供的身份驗證和授權,可將此漏洞的暴露範圍限制在授權使用者內。

致謝

此問題由 Recruit Technologies Co., Ltd. 的 Muneaki Nishimura (nishimunea) 發現並負責任地報告。

參考

CVE-2018-1258: 使用 Spring Security 方法安全的未授權訪問

嚴重 | 2018 年 5 月 9 日 | CVE-2018-1258

描述

結合 Spring Framework 5.0.5.RELEASE 使用 Spring Security 時,存在一個授權繞過漏洞。未經授權的惡意使用者可以未經許可訪問應受限制的方法。

受影響的 Spring 產品和版本

  • Spring Framework 5.0.5.RELEASE 和 Spring Security(任何版本)
  • 只有在使用 Spring Framework 5.0.5.RELEASE 和 Spring Security 方法安全時,應用程式才會受到影響。該 bug 存在於 Spring Framework 5.0.5.RELEASE 中,但只有與 Spring Security 的方法安全支援結合使用時才被視為 CVE。
  • 該 bug 僅存在於 Spring Framework 5.0.5.RELEASE 中。如果應用程式未使用 Spring Framework 5.0.5.RELEASE,則不受影響。該 bug 不影響任何 Spring Framework 4.x 版本或任何其他版本的 Spring Framework。

緩解措施

  • 使用 Spring Framework 5.x 的使用者應避免使用 Spring Framework 5.0.5.RELEASE。升級到 Spring Security 5.0.5.RELEASE+ 或 Spring Boot 2.0.2.RELEASE+ 會傳遞性地引入 Spring Framework 5.0.6.RELEASE+。但是,使用者應確保其他依賴管理機制也更新到使用 Spring Framework 5.0.6.RELEASE 或更新版本。
  • 使用 Spring Framework 4.x(Spring Security 4.x 或 Spring Boot 1.x)的使用者不受影響,因此無需採取任何措施。
  • 無需採取其他緩解措施。

致謝

此問題由 Spring Security 團隊內部發現。

歷史

2018-05-09: 初次釋出漏洞報告

  • 2018-07-30: 澄清受影響版本

CVE-2018-1259: 使用 Spring Data 的 XMLBeam 整合的 XXE

高危 | 2018 年 5 月 9 日 | CVE-2018-1259

描述

Spring Data Commons 1.13 版本(1.13.11 之前)和 2.0 版本(2.0.6 之前),與 XMLBeam 1.4.14 或更早版本結合使用時,存在屬性繫結漏洞,原因是底層庫 XMLBeam 未正確限制 XML 外部實體引用擴充套件。未經身份驗證的遠端惡意使用者可以針對 Spring Data 基於投影的請求負載繫結提供特製的請求引數,從而訪問系統上的任意檔案。

受影響的 Spring 產品和版本

  • Spring Data Commons 1.13 至 1.13.11 (Ingalls SR11)
  • Spring Data REST 2.6 至 2.6.11 (Ingalls SR11)
  • Spring Data Commons 2.0 至 2.0.6 (Kay SR6)
  • Spring Data REST 3.0 至 3.0.6 (Kay SR6)

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 1.13.x 使用者應升級到 1.13.12 (Ingalls SR12)
  • 2.0.x 使用者應升級到 2.0.7 (Kay SR7)
  • 或者,升級到 XMLBeam 1.4.15

已修復此問題的版本包括:

  • Spring Data REST 2.6.12 (Ingalls SR12)
  • Spring Data REST 3.0.7 (Kay SR7)

無需採取其他緩解措施。

請注意,該漏洞僅在使用 XMLBeam 時可被利用。對端點使用 Spring Security 提供的身份驗證和授權,可將此漏洞的暴露範圍限制在授權使用者內。

致謝

此問題由 Abago Forgans 發現並負責任地報告。

參考

  • <a href='https://jira.spring.io/browse/DATACMNS-1292'&gt;https://jira.spring.io/browse/DATACMNS-1292&lt;/a>
  • <a href='https://docs.springframework.tw/spring-data/commons/docs/current/reference/html/#core.web.binding'&gt;Spring Data Commons: Web 資料繫結支援</a&gt;

CVE-2018-1260: spring-security-oauth2 的遠端程式碼執行

嚴重 | 2018 年 5 月 9 日 | CVE-2018-1260

描述

Spring Security OAuth 2.3 版本(2.3.3 之前)、2.2 版本(2.2.2 之前)、2.1 版本(2.1.2 之前)、2.0 版本(2.0.15 之前)以及更早的不受支援版本,存在遠端程式碼執行漏洞。惡意使用者或攻擊者可以向授權端點構造授權請求,當資源所有者被轉發到批准端點時,可能導致遠端程式碼執行。

此漏洞影響滿足以下所有要求的應用程式:

  • 充當授權伺服器角色(例如,使用 @EnableAuthorizationServer)
  • 使用預設的批准端點

此漏洞不影響以下型別的應用程式:

  • 充當授權伺服器角色但覆蓋了預設批准端點
  • 僅充當資源伺服器角色(例如,使用 @EnableResourceServer)
  • 僅充當客戶端角色(例如,使用 @EnableOAuthClient)

受影響的 Spring 產品和版本

  • Spring Security OAuth 2.3 至 2.3.2
  • Spring Security OAuth 2.2 至 2.2.1
  • Spring Security OAuth 2.1 至 2.1.1
  • Spring Security OAuth 2.0 至 2.0.14
  • 更早的不受支援版本也受影響

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 2.3.x 使用者應升級到 2.3.3
  • 2.2.x 使用者應升級到 2.2.2
  • 2.1.x 使用者應升級到 2.1.2
  • 2.0.x 使用者應升級到 2.0.15
  • 更早版本應升級到受支援的分支

無需採取其他緩解措施。

致謝

此問題由 GoSecure 的 Philippe Arteau 發現並負責任地報告。

參考

  • Spring Security OAuth <a href='http://projects.spring.io/spring-security-oauth/docs/oauth2.html'&gt;文件</a&gt;,請參閱“授權伺服器配置”部分
  • <a href='https://github.com/spring-projects/spring-security-oauth/blob/master/tests/annotation/approval/src/main/java/demo/Application.java#L36'&gt;@EnableAuthorizationServer</a> 的示例配置…

CVE-2018-1261: spring-integration-zip 的不安全解壓

嚴重 | 2018 年 5 月 9 日 | CVE-2018-1261

描述

spring-integration-zip 1.0.1 之前的版本存在任意檔案寫入漏洞,可透過構造包含路徑遍歷檔名的特製 zip 壓縮包(也影響其他壓縮格式,如 bzip2, tar, xz, war, cpio, 7z)實現。當檔名與目標解壓目錄連線時,最終路徑會超出目標資料夾。

這特別適用於 unzip 轉換器。

只有當使用此庫的應用程式接受並解壓來自不受信任來源的 zip 檔案時,才會發生此問題。

受影響的 Spring 產品和版本

  • Spring Integration Zip 社群擴充套件專案 1.0.0.RELEASE 版本

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 升級到 1.0.1.RELEASE

或者不要解壓不受信任的 zip 檔案。

致謝

此問題由 Snyk 安全研究團隊發現並負責任地報告。

歷史

2018-05-09: 初次釋出漏洞報告

CVE-2018-1256: Spring Cloud SSO 聯結器中的發行者驗證迴歸

高危 | 2018 年 4 月 30 日 | CVE-2018-1256

描述

Spring Cloud SSO Connector 2.1.2 版本包含一個迴歸問題,該問題會停用未繫結到 SSO 服務的資源伺服器中的發行者驗證。在具有多個 SSO 服務計劃的 PCF 部署中,遠端攻擊者可以使用從另一個服務計劃生成的令牌對使用此版本 SSO Connector 的未繫結資源伺服器進行身份驗證。

受影響的 Spring 產品和版本

  • Spring Cloud SSO Connector 2.1.2 版本

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 已修復此問題的版本包括:</p><ul><li>Spring Cloud SSO Connector: 2.1.3</li></ul>
  • 或者,您可以執行以下 <u>一項</u> 權宜之計:</p><ul><li>透過服務例項繫結將您的資源伺服器繫結到 SSO 服務計劃</li><li>在您的 Spring 應用程式屬性中設定 “sso.connector.cloud.available=true”</li></ul>

致謝

此漏洞由 Pivotal SSO 服務團隊負責任地報告。

歷史

2018-04-30: 初次釋出漏洞報告

CVE-2018-1273: 使用 Spring Data Commons 的 RCE

嚴重 | 2018 年 4 月 10 日 | CVE-2018-1273

描述

Spring Data Commons 1.13 版本(1.13.10 之前)、2.0 版本(2.0.5 之前)以及更早的不受支援版本,存在屬性繫結漏洞,原因是特殊元素未能得到正確中和。未經身份驗證的遠端惡意使用者(或攻擊者)可以針對 Spring Data REST 支援的 HTTP 資源或使用 Spring Data 基於投影的請求負載繫結,提供特製的請求引數,從而可能導致遠端程式碼執行攻擊。

受影響的 Spring 產品和版本

  • Spring Data Commons 1.13 至 1.13.10 (Ingalls SR10)
  • Spring Data REST 2.6 至 2.6.10 (Ingalls SR10)
  • Spring Data Commons 2.0 至 2.0.5 (Kay SR5)
  • Spring Data REST 3.0 至 3.0.5 (Kay SR5)
  • 更早的不受支援版本也受影響

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 2.0.x 使用者應升級到 2.0.6
  • 1.13.x 使用者應升級到 1.13.11
  • 更早版本應升級到受支援的分支

已修復此問題的版本包括:

  • Spring Data REST 2.6.11 (Ingalls SR11)
  • Spring Data REST 3.0.6 (Kay SR6)

無需採取其他緩解措施。

請注意,對端點使用 Spring Security 提供的身份驗證和授權,可將此漏洞的暴露範圍限制在授權使用者內。

致謝

此問題由 GoSecure Inc. 的 Philippe Arteau 發現並負責任地報告。

參考

CVE-2018-1274: 使用 Spring Data 的拒絕服務

嚴重 | 2018 年 4 月 10 日 | CVE-2018-1274

描述

Spring Data Commons 1.13 版本(1.13.10 之前)、2.0 版本(2.0.5 之前)以及更早的不受支援版本,存在屬性路徑解析器漏洞,原因是資源分配不受限制。未經身份驗證的遠端惡意使用者(或攻擊者)可以針對 Spring Data REST 端點或使用屬性路徑解析的端點發出請求,可能導致拒絕服務(CPU 和記憶體消耗)。

受影響的 Spring 產品和版本

  • Spring Data Commons 1.13 至 1.13.10 (Ingalls SR10)
  • Spring Data REST 2.6 至 2.6.10 (Ingalls SR10)
  • Spring Data Commons 2.0 至 2.0.5 (Kay SR5)
  • Spring Data REST 3.0 至 3.0.5 (Kay SR5)
  • 更早的不受支援版本也受影響

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 2.0.x 使用者應升級到 2.0.6
  • 1.13.x 使用者應升級到 1.13.11
  • 更早版本應升級到受支援的分支

已修復此問題的版本包括:

  • Spring Data REST 2.6.11 (Ingalls SR11)
  • Spring Data REST 3.0.6 (Kay SR6)

無需採取其他緩解措施。

請注意,對端點使用 Spring Security 提供的身份驗證和授權,可將此漏洞的暴露範圍限制在授權使用者內。

致謝

此問題由 Fortify Webinspect 的 Yevhenii Hrushka (Yevgeniy Grushka) 發現並負責任地報告。

參考

CVE-2018-1275: 解決 CVE-2018-1270 的部分修復問題

嚴重 | 2018 年 4 月 9 日 | CVE-2018-1275

描述

此 CVE 解決了 Spring Framework 4.3.x 分支中針對 CVE-2018-1270 的部分修復問題。

Spring Framework 5.0.x 版本(5.0.5 之前)、4.3.x 版本(4.3.16 之前)以及更早的不受支援版本,允許應用程式透過 spring-messaging 模組使用簡單的記憶體中 STOMP 代理公開基於 WebSocket 的 STOMP 端點。惡意使用者(或攻擊者)可以向代理構造一條訊息,從而可能導致遠端程式碼執行攻擊。

受影響的 Spring 產品和版本

  • Spring Framework 5.0 至 5.0.4
  • Spring Framework 4.3 至 4.3.15
  • 更早的不受支援版本也受影響

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 5.0.x 使用者應升級到 5.0.5
  • 4.3.x 使用者應升級到 4.3.16
  • 更早版本應升級到受支援的分支

無需採取其他緩解措施。

請注意,對訊息使用 Spring Security 提供的身份驗證和授權,可將此漏洞的暴露範圍限制在授權使用者內。

致謝

原始問題 CVE-2018-1270 由 Micro Focus Fortify 的 Alvaro Muñoz (@pwntester) 發現並負責任地報告。隨後的 CVE-2018-1275 部分修復問題由…

CVE-2018-1270: spring-messaging 的遠端程式碼執行

嚴重 | 2018 年 4 月 5 日 | CVE-2018-1270

描述

Spring Framework 5.0.x 版本(5.0.5 之前)、4.3.x 版本(4.3.16 之前)以及更早的不受支援版本,允許應用程式透過 spring-messaging 模組使用簡單的記憶體中 STOMP 代理公開基於 WebSocket 的 STOMP 端點。惡意使用者(或攻擊者)可以向代理構造一條訊息,從而可能導致遠端程式碼執行攻擊。

受影響的 Spring 產品和版本

  • Spring Framework 5.0 至 5.0.4
  • Spring Framework 4.3 至 4.3.15
  • 更早的不受支援版本也受影響

緩解措施

受影響版本的使用者應採取以下緩解措施:

  • 5.0.x 使用者應升級到 5.0.5
  • 4.3.x 使用者應升級到 4.3.16
  • 更早版本應升級到受支援的分支

無需採取其他緩解措施。

請注意,對訊息使用 Spring Security 提供的身份驗證和授權,可將此漏洞的暴露範圍限制在授權使用者內。

致謝

此問題由 Micro Focus Fortify 的 Alvaro Muñoz (@pwntester) 發現並負責任地報告。

參考

先人一步

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

瞭解更多

獲取支援

Tanzu Spring 透過一個簡單的訂閱即可為 OpenJDK™、Spring 和 Apache Tomcat® 提供支援和二進位制檔案。

瞭解更多

即將舉行的活動

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

檢視全部