1. ウェブアプリケーションのセキュリティ実装
1.9 クリックジャッキング
1.9 クリックジャッキング
■ 発生しうる脅威
クリックジャッキング攻撃により、発生しうる脅威は次のとおりです。マウス操作のみで実行可能な処 理に限定される点以外は、CSRF 攻撃による脅威と同様です。
- ログイン後の利用者のみが利用可能なサービスの悪用
利用者が意図しない情報発信、利用者が意図しない退会処理 等 - ログイン後の利用者のみが編集可能な設定の変更
利用者情報の公開範囲の意図しない変更 等
■ 注意が必要なウェブサイトの特徴
ログイン後の利用者のみが利用可能な機能(サービスや設定)を、マウス操作のみで実行可能なウェ ブサイトが、クリックジャッキング攻撃による影響を受ける可能性があります。マウス操作のみで実行可 能な処理が、利用者に紐づいた情報の公開範囲の変更処理等の場合は、攻撃による被害が大きくなる ため、特に注意が必要です。
また、対策を実施した場合、後述する副作用が発生します。そのため、ウェブサイトの情報セキュリテ ィポリシーや副作用等を加味して、クリックジャッキングの脆弱性対策の実施有無を検討してください。
■ 届出状況
クリックジャッキングの脆弱性に関するウェブサイトの届出は、2011 年に初めて受け付けました。ウェ ブサイトの届出全体に占める割合は、1 パーセント未満と多くはありません。しかしながらこれらの脆弱 性については 2011 年から継続して届出を受けています。なお、届出受付開始から 2014 年第 4 四半期 までに、ソフトウェア製品の届出は受け付けていません。
■ 根本的解決
X-Frame-Options は、ウェブアプリケーションをクリックジャッキング攻撃から防御するためのヘッダ です34。HTTP のレスポンスヘッダに「X-Frame-Options: DENY」のように出力することで、X-Frame-Options に対応したブラウザにおいて、frame 要素や iframe 要素によるページ読み込みの制限ができ ます。なお、Internet Explorer 7 は、X-Frame-Options ヘッダに対応していないため、本対策を実施し たとしても、当該ブラウザにおいてはクリックジャッキング攻撃を防げません。
X-Frame-Options で指定する設定値により、制限の範囲が変わります。設定値の挙動は下記表の 通りです。なお、ALLOW-FROM はブラウザによって適切に動作しない場合があります。開発している ウェブアプリケーションがサポート予定のブラウザの対応状況を調査した上で、当該設定値の使用を 検討してください。
34 RFC7034:「HTTP Header Field X-Frame-Options」http://www.ietf.org/rfc/rfc7034.txt
☞ HTTP レスポンスヘッダに、X-Frame-Options ヘッダフィールドを出力し、他ドメ インのサイトからの frame 要素や iframe 要素による読み込みを制限する。
9-(i)-a
1.9 クリックジャッキング
設定値 frame 要素および iframe 要素により表示できる範囲 DENY すべてのウェブページにおいてフレーム内の表示を禁止 SAMEORIGIN 同一オリジンのウェブページのみフレーム内の表示を許可 ALLOW-FROM 指定したオリジンのウェブページのみフレーム内の表示を許可
処理の実行前にパスワード認証を行うことにより、クリックジャッキングの脆弱性を解消できます。た だし、この方法は画面設計の仕様変更を要する対策であるため、画面設計の仕様変更をせず、実装 の変更だけで対策をする必要がある場合には、9-(i)-a の対策を検討してください。
■ 保険的対策
クリックジャッキング攻撃は、利用者を視覚的に騙して特定の操作をするように誘導します。そのた め、利用者に複雑な操作をさせることは困難です。マウス操作のみで処理が実行されないように、キ ーボード操作などを挟むことで攻撃の成功率を下げることができます。
以上の対策により、クリックジャッキング攻撃に対する安全性の向上が期待できます。クリックジャッキ ングの脆弱性に関する情報については、次の資料も参考にしてください。
■ 対応する CWE
直接対応する CWE はありません。
■ 参考 URL
IPA: テクニカルウォッチ 『クリックジャッキング』に関するレポート https://www.ipa.go.jp/about/technicalwatch/20130326.html