ニュース

「Ruby」にセキュリティアップデート ~「Ruby 2.6」系列はサポートを終了【4月21日追記】

「Ruby 2.7」シリーズもセキュリティのみのメンテナンスへフェイズへ

「Ruby 3.1.2」が正式リリース

 スクリプト言語「Ruby」が4月1日、一斉にアップデートされた。現在、以下のバージョンが利用可能。

  • Ruby 3.1.2
  • Ruby 3.0.4
  • Ruby 2.7.6(通常メンテナンスフェイズは終了。セキュリティメンテナンスフェイズへ)
  • Ruby 2.6.10(最後のリリース)

 今回のリリースでは、StringからFloatへの処理で発見されたバッファオーバーランの脆弱性(CVE-2022-28739)が対策された。セグメンテーションフォールトでプロセスが不正終了されられるほか、限られた状況ながら不正なメモリ読み出しに悪用される可能性がある。

 さらに「Ruby 3.1」「Ruby 3.0」シリーズではRegexp(正規表現)のコンパイル時に同じメモリが二度解放される「ダブルフリー」の脆弱性(CVE-2022-28738)も対策されているとのこと。

 なお、「Ruby 2.7」シリーズは今回のリリースをもって通常メンテナンスフェイズを終了し、セキュリティメンテナンスフェイズへ移行する。このフェイズでは不具合があっても対処されず、セキュリティ上の問題のみ修正される。セキュリティメンテナンスフェイズは1年が予定されているが、今から「Ruby 3.1」「Ruby 3.0」シリーズへの移行計画を立てるべきだろう。

 また、今回のリリースで「Ruby 2.6」シリーズはサポート終了(EOL)となった。もし万が一脆弱性が発見されたとしても、セキュリティパッチはリリースされない。すみやかにサポート中のバージョンへ移行する必要がある。

 「Ruby」は、まつもとゆきひろ(Matz)氏によって1993年に開発が始められたスクリプト言語。オープンソースで開発が続けられており、Webアプリケーションをはじめ、さまざまな用途・プラットフォームで採用されている。バイナリとソースコードは現在、公式のWebサイトから無償でダウンロード可能。Windows環境では「RubyInstaller for Windows」の利用が推奨されている。「Ruby 3.1.2」に対応した「RubyInstaller for Windows」はまだリリースされていないが、間もなく公開されるだろう。

[2022年4月21日編集部追記] 4月20日付けで、「Ruby 3.1.2」に対応した「RubyInstaller for Windows」v3.1.2-1が公開された。また、v3.0/2.7/2.6系統にもセキュリティ修正を含む最新版が公開されている。「RubyInstaller」v3.1.2-1は窓の杜からもダウンロード可能だ。