領先一步
VMware 提供培訓和認證,以加速您的進展。
了解更多更新
我們很高興宣布我們已發布 Spring Data MongoDB 3.4.1 和 3.3.5,以解決以下 CVE 報告
此漏洞由 NSFOCUS TIANJI Lab 的 Zewei Zhang 於 2022 年 6 月 13 日星期一負責地報告。完整報告將發布到 MITRE,並在接下來的幾天內作為安全性公告發布在 tanzu.vmware.com/security 上。
此漏洞影響使用帶有 @Query
或 @Aggregation
註解且使用參數化 SpEL 語句的儲存庫查詢方法的 Spring Data MongoDB 應用程式。特定的攻擊需要使用未經處理的輸入到儲存庫查詢方法。
以下是此特定漏洞的必要條件
@Query
或 @Aggregation
註解的儲存庫查詢方法,這些方法使用 SpEL (Spring Expression Language) 並在 SpEL 運算式中使用輸入參數引用 (?0
, ?1
, …)spring-data-mongodb
依賴項其他說明
[0]
, [1]
, […]
) 引用 SpEL 參數不會產生漏洞,如果您無法升級到包含修復的版本,建議使用此方法作為變通辦法首選的回應是更新到 Spring Data MongoDB 3.4.1 和 3.3.5 或更高版本。如果您已執行此操作,則無需任何解決方法。但是,有些人可能處於無法快速升級的位置。因此,我們在下面提供了一些解決方法。
請注意,解決方法不一定是互斥的,因為安全最好是「深入」完成的。
如果您的應用程式需要由用戶輸入控制的動態 SpEL 運算式,那麼使用陣列語法 [0]
引用 SpEL 參數是一種安全的訪問 SpEL 參數的方法。
將 SpEL 運算式替換為自定義儲存庫方法實作是一種可行的解決方法,可在應用程式代碼中組裝您的動態查詢。 有關更多詳細信息,請參閱關於儲存庫自定義的參考文檔。