アカウント名:
パスワード:
No matter where you put an advanced setting, somebody will tell you that you are an idiot [msdn.com]
標準モードをWeb標準に準拠したら意図したとおりに見えないサイトがあると文句を言われる.互換モードと互換モードで表示するURLのリストを用意したら混乱を引き起こすといわれる.自社のサイトもそのURLリストに加えたら自ら行動で示せと言われる.
そういや、当時、IEだと表示されちゃうんでNNでタグがうまく打てて表示されるか検査してたっけ。てか、当時は表示出来ちゃう事自体問題だなぁと思ってましたが。って打ってあればMIME無視する事とか。
当時のWebサーバーがなんでもかんでもapplication/octet-streamとかtext/plainとか、MIMEを正しく設定してなかった奴が居たので無視する悪癖が付いたような気がします。
# 未だにContent-Type: text/html; charset=noneとか帰ってきたりするのはなんとかならんの?
てゆうか外部から入力されたデータなんて信用ならん(だからダウンロードしたバイナリを考えなしに何でも実行しちゃだめ)ことくらい常識だろ?何でContent-Typeだけ頑にサーバの言いなりに信じるのが正しいことになってるんだ?
サーバーの出すヘッダーは信頼できるけれど内容 (ヘッダーより後の部分) は信頼できない場合があって、その場合に内容が HTML 文書っぽいからといって HTML 文書だと思って処理してしまうと、クロスサイトスクリプティング (XSS) 脆弱性と呼ばれるセキュリティー上の問題が発生する可能性があるからです。 2002 年のスラッシュドットの記事「IEとOperaでプレーンテキスト出力にもXSS脆弱性 [srad.jp]」をどうぞ。
水無月ばけらさんのブログ「水無月ばけらのえび日記」の記事 [bakera.jp]によると、 IE 7 でもデフォルトでは同じ問題が起きる設定のようですね。 IE 8 RC1 だとどうなのか、ウェブで情報を探そうとしましたがよくわかりませんでした (特に話題になっていないということは、たぶんデフォルトは変わっていないのでしょう)。
X-Content-Type-Options: nosniffというヘッダを付けると、内容のスニッフィングをやめるそうです。ちなみにcharsetの指定がHTTPヘッダ最優先なのはHTMLの仕様 [asahi-net.or.jp]ですね。昔は標準を無視していたなら「互換性」を名目にした言い訳も成り立つでしょうが、IEもかなり昔からHTTPヘッダ最優先なのに今さら変えるほうがどうかしてるでしょう。
X-Content-Type-Options: nosniffというヘッダを付けると、内容のスニッフィングをやめるそうです。
なんと。情報ありがとうございます。調べてみたら、 IE 8 のセキュリティー上の新機能として IEBlog の記事「IE8 Security Part VI: Beta 2 Update [msdn.com]」 (Eric Lawrence さん) にも出ていますね。
おせーよwww指摘 [java-house.jp] されて [derkeiler.com]から対処までに何年かかってんだよwwwでもGJ!
IE 8 がリリースされても以前のバージョンが長く残るでしょうから、すぐに「内容が動的に変わるものには text/plain を使わない」とか「先頭に何バイトやらの空白を入れる」とかのバッドノウハウを捨てられるわけではありませんが、この対策には感心しました。この対策によって将来、安全性も強化されるし開発の手間も減るという良い方向に向かうことを願います。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
犯人は巨人ファンでA型で眼鏡をかけている -- あるハッカー
どう選択できるようにしても,誰かが文句を言う・・ (スコア:5, すばらしい洞察)
No matter where you put an advanced setting, somebody will tell you that you are an idiot [msdn.com]
標準モードをWeb標準に準拠したら意図したとおりに見えないサイトがあると文句を言われる.
互換モードと互換モードで表示するURLのリストを用意したら混乱を引き起こすといわれる.
自社のサイトもそのURLリストに加えたら自ら行動で示せと言われる.
屍体メモ [windy.cx]
Re: (スコア:3, すばらしい洞察)
Re: (スコア:2, 興味深い)
ほぼ独占状態だったんだよ。
そのブラウザはな、CookieだのJavaScriptだの、その頃は標準ではなかった
いろいろな拡張を勝手にやっちゃったんだな。
ブラウザのシェアを取りたい弱小のMSブラウザ、IEは、そんな標準外の
Netscapeからシェアを奪い取るために、Netscapeがデファクトスタンダードに
してしまった標準外のページも見れるように対応しちゃったんだ。
その後シェア争いの過程で、Netscapeが勝手に追加した標準外の仕様では
物足りなくなったMSが、独自に拡張もやりはじめちゃったんだね。
Re: (スコア:3, 興味深い)
まだHTML手打ちユーザーが多く、またレイアウトにテーブルタグを使うのが当たり前だった時代にこの差は大きく、いわばNNの自滅といった形でシェアを譲り渡したのも忘れちゃいけない。
アンチMS君は独禁法違反ばかり突き上げるけど、当時アンチIEだった私が転んだのはこのテーブルタグの解釈の違いが理由だものね。それは周りにも大勢いた。
「NNだと見えないサイトでもIEなら見える」というのは大きかったよ。
たとえ原因がサイト側のタグミスだったとしてもね。
Re: (スコア:0)
そういや、当時、IEだと表示されちゃうんでNNでタグがうまく打てて表示されるか検査してたっけ。
てか、当時は表示出来ちゃう事自体問題だなぁと思ってましたが。
って打ってあればMIME無視する事とか。
Re:どう選択できるようにしても,誰かが文句を言う・・ (スコア:1)
は
”<HTML>って打ってあればMIME無視する事とか。”
の誤打です。
すんません。
(「匿名投稿制限中!」らしいのでIDでいいや)
Re: (スコア:0)
当時のWebサーバーがなんでもかんでもapplication/octet-streamとかtext/plainとか、
MIMEを正しく設定してなかった奴が居たので無視する悪癖が付いたような気がします。
# 未だにContent-Type: text/html; charset=noneとか帰ってきたりするのはなんとかならんの?
Re: (スコア:0)
Re:どう選択できるようにしても,誰かが文句を言う・・ (スコア:2)
サーバーの出すヘッダーは信頼できるけれど内容 (ヘッダーより後の部分) は信頼できない場合があって、その場合に内容が HTML 文書っぽいからといって HTML 文書だと思って処理してしまうと、クロスサイトスクリプティング (XSS) 脆弱性と呼ばれるセキュリティー上の問題が発生する可能性があるからです。 2002 年のスラッシュドットの記事「IEとOperaでプレーンテキスト出力にもXSS脆弱性 [srad.jp]」をどうぞ。
水無月ばけらさんのブログ「水無月ばけらのえび日記」の記事 [bakera.jp]によると、 IE 7 でもデフォルトでは同じ問題が起きる設定のようですね。 IE 8 RC1 だとどうなのか、ウェブで情報を探そうとしましたがよくわかりませんでした (特に話題になっていないということは、たぶんデフォルトは変わっていないのでしょう)。
Re: (スコア:0)
X-Content-Type-Options: nosniffというヘッダを付けると、内容のスニッフィングをやめるそうです。
ちなみにcharsetの指定がHTTPヘッダ最優先なのはHTMLの仕様 [asahi-net.or.jp]ですね。昔は標準を無視していたなら「互換性」を名目にした言い訳も成り立つでしょうが、IEもかなり昔からHTTPヘッダ最優先なのに今さら変えるほうがどうかしてるでしょう。
Re:どう選択できるようにしても,誰かが文句を言う・・ (スコア:3, 興味深い)
それは、未だに "AddDefaultCharset none" と書け、と書いているページを何とかしないと。
X-Content-Type-Options: nosniff (スコア:2)
なんと。情報ありがとうございます。調べてみたら、 IE 8 のセキュリティー上の新機能として IEBlog の記事「IE8 Security Part VI: Beta 2 Update [msdn.com]」 (Eric Lawrence さん) にも出ていますね。
おせーよwww指摘 [java-house.jp] されて [derkeiler.com]から対処までに何年かかってんだよwwwでもGJ!
IE 8 がリリースされても以前のバージョンが長く残るでしょうから、すぐに「内容が動的に変わるものには text/plain を使わない」とか「先頭に何バイトやらの空白を入れる」とかのバッドノウハウを捨てられるわけではありませんが、この対策には感心しました。この対策によって将来、安全性も強化されるし開発の手間も減るという良い方向に向かうことを願います。