From: "NAKAMURA, Hiroshi" Date: 2010-08-12T16:10:13+09:00 Subject: [ruby-dev:42014] Re: WEBrickに関するセキュリティ修正 (CVE-2010-0541) 2010/8/12 U.Nakamura : >> ただ、私の理解する限り、元々のWEBrickのデフォルトエラーページに、そのも >> のズバリなXSSはないような気がします。例外メッセージやbacktrace(-d起動の >> 時だけ)に、attackerが選んだ文字列を入れられるとすると、そっちのほうが >> 問題のような。ただし、絶対ない、そっちが悪い、ということではないので、 >> いつかは修正したほうがいいのは間違いありません。 >> >> あるいは、Appleが作った/配ったアプリが、create_error_page()を定義してい >> て、そちらにXSSがあったとかなのかもしれませんね(完全な憶測)。 > > 今のところ、このパッチそのままではなくて、create_error_page() > 側は見捨ててWEBrick自前出力側だけ対処する方向で検討したりもし > てたんですが、どうでしょうか? > デフォルトエラーページに問題がないとなひさんが考えられた理由 > を説明して頂けると嬉しいです。 HTTPResponse#set_errorの、_end_of_html_ヒアドキュメントの中に、攻撃者が 挿入できる文字列があるか、ということを考えたのですが、 ・@reason_phraseはソースコード中で定義。 ・ex.messageは、まあもしかしたらそんなコード書く人も居る? ・ex.backtraceも、まあ絶対にないとは言えないか。 ・@config[:ServerSoftware]はサーバ設定。 ・hostとportは、そこに文字列埋め込もうとすると名前解決も奪わないと。 ということで、「そのものズバリなXSSはないような...(略)...ただし、絶対な い、そっちが悪い、ということではない」と判断しました。どうでしょ。 > create_error_page()の先に穴があった場合は... 自分の首を絞めた > い奴は勝手に死ねよとか思う私は冷たい人? ^^; まあでも、広くお知らせしてあげたほうがよいですよね。修正有無は別にして。