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

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) 初版