CVE-2026-27820: Zlib::GzipReader におけるバッファオーバーフロー脆弱性

Posted by hsbt on 5 Mar 2026
Translated by egamasa

Zlib::GzipReader に、バッファオーバーフローの脆弱性が存在します。この脆弱性は、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 を使っている場合は、 Gemfilegem "zlib", ">= 3.2.3" を追加してください。

影響を受けるバージョン

  • zlib gem 3.2.2 およびそれ以前のバージョン

クレジット

この脆弱性情報は、calysteon 氏によって報告されました。また、nobu 氏によって修正されました。

更新履歴

  • 2026-03-05 09:00:00 (JST) 初版

最近のニュース

Ruby 4.0.0 リリース

Ruby 4.0.0 が公開されました。 Ruby 4.0 には “Ruby Box”、”ZJIT” ほか多数の改善が含まれています。

Posted by naruse on 25 Dec 2025

もっと読む...