CVE-2021-22097: Spring-AMQP 遠端拒絕服務 - 惡意構造的 java.util.Dictionary 物件反序列化

MEDIUM | 2021 年 10 月 26 日 | CVE-2021-22097

描述

Spring AMQP Message 物件在其 toString() 方法中,將會反序列化 content type 為 application/x-java-serialized-object 的訊息體。java.lang 和 java.util 包中的類被認為是可信的。

可以構造一個惡意的 java.util.Dictionary 物件,如果在呼叫 toString() 方法時,會導致應用程式 100% 的 CPU 使用率。

這要求攻擊者有許可權直接向 RabbitMQ 伺服器釋出具有此類訊息體的訊息。

受影響的 Spring 產品和版本

  • Spring AMQP
    • 2.2.0 - 2.2.18
    • 2.3.0 - 2.3.10

緩解措施

不要允許不可信的參與者向 RabbitMQ 釋出任意資料。受影響版本的使用者應應用以下緩解措施。2.3.x 使用者應升級到 2.3.11。2.2.x 使用者應升級到 2.2.19。不需要其他步驟。已修復此問題的版本包括

  • Spring AMQP
    • 2.3.11
    • 2.2.19

致謝

此問題由美團公司資訊安全部 Cloud-Penetrating Arrow Lab 的 r00t4dm 發現並負責任地報告。

參考

歷史記錄

  • 2021-10-26:釋出初始漏洞報告。

領先一步

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

瞭解更多

獲得支援

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

瞭解更多

即將舉行的活動

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

檢視全部