X-Frame-Options
この記事に従って、パートナー サイトが雇用主のサイトを iframe でラップできるようにするための「パススルー」を実装しています: http://blogs.msdn.com/b/ieinternals/archive/2010/03/30 /combating-clickjacking-with-x-frame-options.aspx
(投稿する URL を分割)
簡単に言えば、パートナーのページには、ドメインに対する URL を含む iframe があります。ドメイン内のどのページにも、 のような特別な url 引数が追加され&@mykey=topleveldomain.com
、ページのトップ レベル ドメインが何であるかが示されます。
当社のフィルターは、提供されている場合はパートナー TLD を URL から取得し、ホワイトリストに対して検証します。リストにある場合は、X-Frame-Options
ヘッダーに値を付けて送信しますALLOW-FROM topleveldomain.com
(そして、今後のクリックのために Cookie を追加します)。SAMEORIGIN
ホワイトリストにない場合は、またはを発送しDENY
ます。
ALLOW-FROM domain
問題は、最新の Firefox と Google Chrome では、結果の送信が全体的にノーオペレーションのように見えることです。IE8 は、少なくとも、正しく実装しているようALLOW-FROM
です。
このページをチェックしてください: http://www.enhanceie.com/test/clickjack . 「コンテンツを表示する必要がある」5 つ目 (5 つのうち) のボックスの直後は、コンテンツを表示するべきではないボックスですが、実際に表示されているボックスです。この場合、iframe 内のページは、 とX-Frame-Options: ALLOW-FROM http://www.debugtheweb.com
は明らかに異なる TLDを送信していますhttp://www.enhanceie.com
。それでも、フレームにはコンテンツが表示されます。
関連する(デスクトップ)ブラウザ全体X-Frame-Options
で本当に実装されているかどうかについての洞察はありますか? ALLOW-FROM
おそらく構文が変更されましたか?
興味深いリンク:
- x-frame-options のドラフト rfc: https://datatracker.ietf.org/doc/html/draft-gondrom-frame-options-01
- developer.mozilla の記事では、ヘッダーを 2 オプション ヘッダー (sameorigin または deny) として説明しています。 https://developer.mozilla.org/en-US/docs/Web/HTTP/X-Frame-Options
- すべてを開始した msdn ブログ: http://blogs.msdn.com/b/ie/archive/2009/01/27/ie8-security-part-vii-clickjacking-defenses.aspx
- 3 つの値について説明する msdn ブログ: allow-from origin の追加http://blogs.msdn.com/b/ieinternals/archive/2010/03/30/combating-clickjacking-with-x-frame-options.aspx