2016-09-14 3 views
0

X-Frame-Options HTTPヘッダーはどのようなシナリオで使用する必要がありますか?X-Frame-Optionsはいつ使うのですか?

ブラウザが別のWebページ内のフレームにWebページを表示するかどうかを示すHTTPヘッダー。クリックジャック攻撃に対する防御として使用されます。

これは、<form>要素を含むWebページでのみ意味がありますか?

は、Webページ上でこの唯一作る意味はHTTP POST要求を実行していますか?

これは電子商取引のウェブサイトのチェックアウトページ用ですか?

どのシナリオを使用する必要がありますか?

答えて

0

単純な答えは:フレーミングが不要なところです。

フレーミングは、完全に有効なサイトを別のサイトに読み込んで、click-jackingというプロセスで相互作用する可能性があるため、危険です。例えば

言ってやるが、私は本当のインターネットバンキングのサイトのように見えるURLで偽のサイトを設定します。これは、偽のコピーを作成しようとするのではなく、実際のサイトをフレーミングすることで、はるかに簡単です。次に、ユーザー名とパスワードのフィールドの上に偽の入力フィールドを作成し、それらの値を読み込み、座ってユーザー名とパスワードを収集します。

だからあなたはおそらく、あなただけのフォームを持つページにこれを実行する必要がありますが、本当に、なぜ行くと自分自身にハードそれを作ると決め、フォームと各ページにそれを設定することを忘れないように持っていると主張するだろうか?サイト全体に対して一度設定して、それを忘れてください。

また、他の「重要でない」ページのフレーミングを許可し、上記のように1つを忘れやすくすることで、サイト全体を簡単に偽装し、ログインページやチェックアウトページのみを手動で行う必要があります偽った。だから、私はAmazon.comの偽のバージョンを設定し、Amazon.com全体を構成して本物に見えるようにしてから、チェックアウトするとすぐに私のチェックアウトページにリダイレクトすることができます。 1つのページをサイト全体よりも偽装する方がはるかに簡単です。だから、戻ってあなたの質問に私の元の応答に

:なぜあなたはどこにでもこのヘッダーを置きたいと思いませんか?はい、それはそれぞれのレスポンスで少し余分なバイトですが、高度に最適化されたサイトがない限り、それは本当に目立つものです。はい、それは技術的には標準的なものではありません(したがって、名前のXビット)が、すべてのメインストリームブラウザは主な「DENY」と「SAMEORIGIN」のバリエーションをサポートしています。

+0

それで、私は正当なフレーミングを妨げるでしょう。一方、私は合法的枠組みのシナリオを考え出すのは難しいです。 – Fred

+0

はい。実際にはそれほど大きなUXとClickJackingのリスクではないため、フレーミングは賛成できなくなりました。本当に必要な場合は、SAMEORIGIN X-Frame-Optionsで覆われた正当な理由はほとんどありません。 –

関連する問題