CVE-2026-27820: Zlib::GzipReader 緩衝區溢位漏洞
由 hsbt 發表於 2026-03-05
翻譯: Bear Su
Zlib::GzipReader 中發現了一個緩衝區溢位漏洞。該漏洞的 CVE 編號為 CVE-2026-27820。我們建議您升級 zlib gem。
風險細節
zstream_buffer_ungets 函式在之前產生的輸出前面添加了調用者提供的位元組,但在 memmove 移動現有數據之前未能確保後端 Ruby 字串具有足夠的容量。當緩衝區長度超過容量時,這可能會導致記憶體損壞。
建議措施
我們建議將 zlib gem 更新至 3.2.3 或更新的版本。為了確保與舊版 Ruby 系列捆綁版本的相容性,您可以使用以下方式更新:
- Ruby 3.2 使用者:更新至 zlib 3.0.1
- Ruby 3.3 使用者:更新至 zlib 3.1.2
您可以使用 gem update zlib 進行更新。如果您使用 bundler,請將 gem "zlib", ">= 3.2.3" 添加到您的 Gemfile 中。
受影響版本
zlib gem 3.2.2 或更低版本。
致謝
感謝 calysteon 發現此問題。 感謝 nobu 協助修復此風險漏洞。
歷史
- 最初發布於 2026-03-05 09:00:00 (UTC)
最新消息
Ruby 4.0.2 發布
Ruby 4.0.2 已經發布了。
由 k0kubun 發表於 2026-03-16
Ruby 3.4.9 發布
Ruby 3.4.9 已經發布了。
由 nagachika 發表於 2026-03-11
Ruby 3.2.10 發布
Ruby 3.2.10 已經發布了。
由 hsbt 發表於 2026-01-14
Ruby 4.0.1 發布
Ruby 4.0.1 已經發布了。
由 k0kubun 發表於 2026-01-13