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.1 發布
Ruby 4.0.1 已經發布了。
由 k0kubun 發表於 2026-01-13
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