clickjackingを予防する小さなテクニック

852 ワード

WHATWGのHTML 5ドキュメント開発者バージョンでは、クリックしたページがメインウィンドウに属するかiframeフレームワークのサブウィンドウに属するかを判断することによって、攻撃者がユーザに虚偽のメインウィンドウを提示することを防止し、ユーザのクリックを誘導して情報をさらに取得することを防止するテクニックが例示されている.
jsfiddle.Netの例では、javascript入力用のiframeボックスとメインウィンドウを比較します.
まずiframeに入力
console.log(top);
console.log(self);
console.log(top==self);

実行後の結果は
Window jsfiddle.net
Window /_display/
false

同じコードをメインウィンドウの下のfirebugに入力し、実行結果は
Window jsfiddle.net
Window jsfiddle.net
true

上記の2つの逆の結果から,javascriptコードを用いてクリックイベントがトリガーされた後,クリックがメインウィンドウで発生したかどうかを確認してから後続の操作を容易に行うことができる.