web-dev-qa-db-ja.com

iframeに埋め込むと一部のサイトが表示されないのはなぜですか?

DVWA's 保存されたXSSオプションを利用して、次のペイロードを使用しています:<iframe src="url">

このペイロードを使用するときに、一部のサイトは機能するが他のサイトは機能しない理由を知りたいのですが。

例えば: <iframe src="http://usatoday.com">機能しますが、<iframe src="http://google.com">は機能しません(空のボックスが表示されます)。このサイトも動作しません。

6
eez0

これは、次のHTTPヘッダーで制御できます。

Header set X-Frame-Options 

次のオプションがあります。

  • 拒否:すべてのフレーミングを停止します
  • SAMEORIGIN:ページ自体を配信したのと同じWebサイトを除いて、フレーミングを停止します。 (許可 http://www.example.com/http://www.example.com/ から提供されるフレームページにX-Frame-Optionsをこれに設定して値)

Googleを見ると:

root@bt:~# telnet google.com 80
Trying 173.194.34.192...
Connected to google.com.
Escape character is '^]'.
GET / HTTP/1.1

HTTP/1.1 302 Found
Location: http://www.google.es/
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Set-Cookie: PREF=ID=33213a21c9470cd8:FF=0:TM=1372280788:LM=1372280788:S=uhe-vKiypMTkoLNP; expires=Fri, 26-Jun-2015 21:06:28 GMT; path=/; domain=.google.com
Set-Cookie: NID=67=pl37RO9ptszDuKjsU8ysb4W3bkos7KK0u28rPbWdM-hJsNo_gS_XFd1dtWSHM7zAeDjITumqHWIw6P836EqfGSZk51m7nioFM6SrQHZzVVEHgDjXL1CpTmGRrdjP4d_L; expires=Thu, 26-Dec-2013 21:06:28 GMT; path=/; domain=.google.com; HttpOnly
P3P: CP="This is not a P3P policy! See http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for more info."
Date: Wed, 26 Jun 2013 21:06:28 GMT
Server: gws
Content-Length: 218
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN   <----

<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.es/">here</A>.
</BODY></HTML>

X-Frame-OptionsがSAMEORIGINに設定されていることがわかります。これにより、WebサイトをiFramingできなくなります。

7
Lucas Kauffman

Webサイトは通常、JavaScriptまたは X-Frame-Options ヘッダーで記述されたiframeブレーカーを使用して、iframe化されないようにします。

Google.comの場合は後者です。

fabian ~% curl -I www.google.com | grep Frame
X-Frame-Options: SAMEORIGIN
10
copy