CVE-2017-14064: JSON の生成時におけるヒープ暴露について

Posted by usa on 14 Sep 2017

Ruby の標準添付ライブラリである JSON の JSON モジュールの generate メソッドにおいて、特殊な引数を渡された場合に、状況によってはヒープの中身が外部から閲覧可能となりうるという脆弱性が発見されました。 この脆弱性は、CVE-2017-14064 として登録されています。

詳細

JSON モジュールの generate メソッドにおいて、第二引数として JSON::Ext::Generator::State クラスのインスタンスを渡すことができますが、特別な調整がされたインスタンスを渡した場合、ヒープの中身が暴露された状態で JSON 文字列が出力される場合がありました。

この問題の影響を受けるバージョンの Ruby のユーザーは、速やかに問題の修正されたバージョンに更新するか、または下記の回避策を取ってください。

影響を受けるバージョン

  • Ruby 2.2.7 以前の全ての Ruby 2.2 系列
  • Ruby 2.3.4 以前の全ての Ruby 2.3 系列
  • Ruby 2.4.1 以前の全ての Ruby 2.4 系列
  • revision 58323 より前の開発版

回避策

JSON ライブラリは gem としても配布されています。 Ruby 全体を更新できない事情がある場合は、バージョン 2.0.4 以降の JSON gem をインストールしてください。

クレジット

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

更新履歴

  • 2017-09-14 21:00:00 (JST) 初版

最近のニュース

Ruby 4.0.0 リリース

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

Posted by naruse on 25 Dec 2025

サイトのアイデンティティの再設計

サイトの包括的なデザインのアップデートを発表できることを嬉しく思います。今回の更新ではTaeko Akatsukaさんにデザインを担当していただきました。

Posted by Hiroshi SHIBATA on 22 Dec 2025

Ruby 4.0.0 preview2 リリース

Ruby 4.0.0-preview2 が公開されました。Ruby 4.0では、Unicodeバージョンの17.0.0へのアップデートなど様々な改善が行われています。

Posted by naruse on 17 Nov 2025

もっと読む...