ウェブサイト構築する上での脆弱性でクリックジャッキングを指摘され、
iframeでよそのサイトをまるっと表示させると良くないね、というご指摘がありまして・・・
htaccess設定でどうにか出来そうな感じだが・・・
どうしたらいいんだ教えてチャッピー・・・
bash
コードをコピーするHeader always append X-Frame-Options SAMEORIGIN
これは、クリックジャッキング対策として、HTTPレスポンスヘッダに X-Frame-Options: SAMEORIGIN
を追加する設定です。この設定が行う処理は以下の通りです。
処理の詳細
X-Frame-Options ヘッダの追加X-Frame-Options
は、ブラウザに対して、ページを <iframe>
要素や <frame>
要素の中に表示することができるかどうかを制御するためのヘッダです。
SAMEORIGIN の指定SAMEORIGIN
の設定により、同じオリジン(同一ドメイン、プロトコル、ポート) からのリクエストのみ、そのページを <iframe>
や <frame>
の中で表示できるように制限します。
例えば、example.com
にアクセスした場合、example.com
ドメイン内でのページの <iframe>
表示は許可されますが、他のサイト(例:malicious-site.com
)が example.com
のページを <iframe>
内で表示しようとすると、表示がブロックされます。
always append の意味always append
は、Apacheサーバーの設定で、常に X-Frame-Options
ヘッダをレスポンスに「追加」するという意味です。通常は、リクエストに対してヘッダがすでに設定されている場合は再追加しませんが、このオプションを使うと強制的に追加されます。
何も設定せずiframeで表示した感じ(画像)↓


ほんで、.htaccessに下記を貼り付けてみる・・・
Header always append X-Frame-Options SAMEORIGIN
すると・・・


☟同一サイト内表示
iframeで別サイトを表示する例
一安心です