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 preview2 發布
我們很高興宣布 Ruby 4.0.0-preview2 發布了。 Ruby 4.0 將 Unicode 版本更新至 17.0.0,以及其他更新。
由 naruse 發表於 2025-11-17
Ruby 3.3.10 發布
Ruby 3.3.10 已經發布了。
由 nagachika 發表於 2025-10-23
移交 RubyGems 程式碼儲存庫的所有權
親愛的 Ruby 社群
由 matz 發表於 2025-10-17
Ruby 3.4.7 發布
Ruby 3.4.7 已經發布了。
由 k0kubun 發表於 2025-10-07