Ruby - A Programmer's Best Friend

Rubyコミュニティは8月19日(現地時間)、「Ruby 1.9.2-p330 Released」において、Ruby 1.9.2系の最新版となる「Ruby 1.9.2-p330」の公開を伝えた。今回のリリースはセキュリティ脆弱性の修正を目的としている。

Ruby 1.9.2のサポートは7月31日をもって終了する予定だったが(EOL for Ruby 1.8.7 and 1.9.2)、サポート終了アナウンスを実施したあとでRuby 1.9.2に重大なセキュリティリグレッションが発見されたため、これを修正する目的で今回のバージョンがリリースされた。Ruby 1.9.2系は本リリースをもって最後のバージョンとなる見通し。

今回のバグは、クラスURIのメソッドdecode_www_form_componentで長い文字列をパースしたときに現れるという。例として、次のようなコードを実行すると再現されると紹介されている。

ruby -v -ruri -e'URI.decode_www_form_component "A string that causes catastrophic backtracking as it gets longer %"'

このセキュリティ脆弱性はRuby 1.9.3-p330よりも前のバージョンのRuby 1.9.2系に存在しており、Ruby 1.9.3p0およびこれ以降のバージョンは影響を受けない。