CVE-2020-10663: JSON 存在任意建立物件安全性風險 (額外修正)

mame 發表於 2020-03-19
翻譯: Juanito Fatas

Ruby 內建的 json gem 存在任意建立物件的安全性風險,此風險的 CVE 識別號為 CVE-2020-10663。我們強烈建議您升級 json gem。

風險細節

json gem(包含 Ruby 內建的版本)在解析 JSON 文件時,系統可以被置入任意的物件。

此風險與 CVE-2013-0269 類似。之前的補丁不完整,只考慮到 JSON.parse(user_input),沒考慮到其他解析的方法像是:JSON(user_input)JSON.parse(user_input, nil)

了解更多細節參見 CVE-2013-0269。 注意本風險本可用來建立大量無法被 GC 回收的 Symbol 物件,但像是這種類型的攻擊已經不再有效,因為 Ruby 的 Symbol 物件可以被 GC 回收了。但根據應用程序的不同,建立任何物件仍可能存在嚴重的安全性風險。

請用 gem update json 指令更新 json gem 至 2.3.0 以上版本。用 bundler 請加入 gem "json", ">= 2.3.0" 這行到 Gemfile

受影響版本

  • JSON gem 2.2.0 及先前版本

致謝

感謝 Jeremy Evans 回報此問題

歷史

  • 最初發佈於 2020-03-19 13:00:00 (UTC)

最新消息

Ruby 4.0.0 發布

我們很高興宣布 Ruby 4.0.0 發布了。 Ruby 4.0 導入了 Ruby::Box 和 “ZJIT”,以及許多改進功能。

naruse 發表於 2025-12-25

Ruby 文件的新樣貌

繼重新設計 ruby-lang.org 之後,我們還有更多消息來慶祝 Ruby 誕生 30 週年: docs.ruby-lang.org 採用了 Aliki—RDoc’s 的全新預設主題。

Stan Lo 發表於 2025-12-23

重新設計我們的網站形象

我們很興奮地宣布網站進行了全面改版。這次更新的設計方案是由 Taeko Akatsuka 負責創作。

Hiroshi SHIBATA 發表於 2025-12-22

更多新聞...