Rails 2系のXSS脆弱性がRuby 1.9では影響なしとされる理由 - 岩本隆史の日記帳(情報元のブックマーク数)

すげぇええええ詳しいRoRクロスサイトスクリプティング脆弱性の対応方法についての解説

つまり、Ruby 1.8の環境にパッチを適用すると、escape_onceメソッドでの出力時に、不正バイトがサニタイズされるようになる、ということです。
入口ではバリデーションされない
大垣さんの前掲記事でも、徳丸さんの記事でも、入口でのバリデーションが推奨されていて、私もだんだんその見解になびいてきているのですが、それはともかくRailsでは、入口でのバリデーションは行われません。これは、パッチを当てても変わりませんでした。

Rails 2系のXSS脆弱性がRuby 1.9では影響なしとされる理由 - 岩本隆史の日記帳(アーカイブ)

以下が結論みたい、、、うーむ・・・

結論

RoR脆弱性に関連してRuby1.9では安全、と解説されていますが、それはRuby1.9は不正な文字エンコーディングを受け付けないからです」というのは誤りで、「ETag生成処理時にたまたま正規表現マッチが行われ、Ruby1.9ではそこで例外が発生するから」というのが正解です。ますますRailsを使う気が失せました。

Rails 2系のXSS脆弱性がRuby 1.9では影響なしとされる理由 - 岩本隆史の日記帳(アーカイブ)

screenshot