Ruby on Rails |
4日(米国時間)、Ruby on Railsの2系すべてのバージョンにXSSの脆弱性があることがRiding Rails: XSS Vulnerability in Ruby on Railsにおいて発表された。特定のUnicode文字列を使ってチェックをくぐり抜け、任意のHTMLを送り込まれる危険性がある。なおRuby 1.9系で動作しているアプリケーションはこの影響を受けない。それぞれのバージョンに対するパッチは次のとおり。
- 2-0-CVE-2009-3009.patch - Patch for 2.0 series
- 2-1-CVE-2009-3009.patch - Patch for 2.1 series
- 2-2-CVE-2009-3009.patch - Patch for 2.2 series
- 2-3-CVE-2009-3009.patch - Patch for 2.3 series
現在サポートされているのは2.2系および2.3系であるため、2.0系および2.1系を使っているユーザには2.3系など最新のサポートブランチへのアップグレードが推奨されている。また同日、クッキー関連の処理で脆弱性があることもRiding Rails: Timing Weakness in Ruby on Railsにおいて発表された。2.1系およびそれ以降のすべてのブランチが影響を受ける。パッチは次のとおり。
この2つの脆弱性に対応した最新版がRuby on Rails 2.3.4としてRiding Rails: Ruby on Rails 2.3.4: Security Fixesにて公開された。2.3.4はセキュリティ問題への対応以外にも、新機能の追加やバグの修正も合わせて実施されている。しかし2.3.4には問題もある。Riding Rails: Ruby on Rails 2.3.4: Security Fixesのコメントや、2日後となる6日(米国時間)に発表されたRiding Rails: What's New in Edge Rails: The Security Editionでも説明されているが、2.3.4はRuby 1.9系では動作しない。このためRuby 1.9系を使っている場合、Rails 2.3.4にアップグレードすると動作しなくなる。
Ruby 1.8系を使っている場合には公開された最新のRails 2.3.4へのアップグレードを、Ruby 1.9系を使っている場合には、Timing Weaknessのみ手動で対処をおこない、対応したバージョンがリリースされるまで待つ必要がある。