iframeで外部からWebページを偽装される「クリックジャッキング」対策

今日までクリックジャッキングという攻撃方法があること自体知りませんでした。

クリックジャッキングとは、悪意のあるサイト上で別サイトをiframeで埋め込み、視覚的にはわからないようにして、ユーザーが気が付かないうちに、別サイトの情報を変更されてしまい情報を不正に盗まれてしまいます。
ですので、クリックジャッキング対策としては、悪意のあるサイトからのiframe呼び出しをできないようにすることです。

Webサイトから返されるHTTPレスポンスヘッダに、「X-Frame-Options」というものがありますので、これをhtaccessを使いヘッダを含めておくことでiframeの別サイトでの表示を制御することができます。

.htaccessに以下を記述します。

# iframe表示をすべて禁止させる場合
<ifmodule mod_headers.c>
Header always append X-Frame-Options DENY
</ifmodule>

# iframe表示を同一ドメイン内のみ許可、それ以外は禁止する場合
<ifmodule mod_headers.c>
Header always append X-Frame-Options SAMEORIGIN
</ifmodule>

# iframe表示を指定されたドメインのみ許可する場合
<ifmodule mod_headers.c>
Header always append X-Frame-Options ALLOW-FROM http://www.example.jp/
</ifmodule>

Apacheのmod_headersモジュールの違いなのか知らなけど、上記の記述ではエラーするサーバーがありました。
そのサーバーではalwaysを抜いたら動きました。よくわからん。

Header append X-Frame-Options SAMEORIGIN