CVE-2018-1257: spring-messaging 的 ReDoS 攻擊
描述
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) 發現並負責任地報告。