Clickjacking
クリックジャッキングとは、透明な iframe をおとりページに重ね、被害者が知らずに標的サイトのボタンをクリックさせてしまう攻撃である。
目的
攻撃者が被害者のクリックを借用して機密操作を起こすのを防ぐ。
メカニズム
攻撃者のページには、おとりボタンの上に <iframe src="target.com/delete" style="opacity:0"> が重ねられる。おとりをクリックすると、実際には iframe 内の標的ボタンがクリックされる。防御策は X-Frame-Options: DENY や CSP frame-ancestors による埋め込み制限である。
ユースケース
- 削除や送金ボタンのクリック誘導
- ソーシャルメディアのライクジャッキング
- 権限許可のハイジャック
- 広告クリック詐欺
例
- 入力
<iframe src="target/delete" opacity=0>OutputClickjacked deletionTransparent iframe
よくあるエラー
- No X-Frame-Options or CSP frame-ancestors set
- Set DENY or SAMEORIGIN
関連用語
XSS
XSS(クロスサイトスクリプティング)は、攻撃者が悪意あるスクリプトをページに注入し、他のユーザーのブラウザで実行させる攻撃である。保存型、反射型、DOMベース型がある。 用語集
CSRF
CSRF(クロスサイトリクエストフォージェリ)は、攻撃者がログイン中のユーザーを騙して、知らないうちに悪意あるリクエストを対象サイトへ送らせる脆弱性である。 用語集
CSP
CSP(Content Security Policy)は、HTTP ヘッダーでページが読み込めるリソースのオリジンを宣言し、XSS やデータ注入の攻撃面を縮める。 用語集
Security Header
セキュリティ HTTP ヘッダーとは、ブラウザにセキュリティ機構の有効化を指示するレスポンスヘッダーである。CSP、HSTS、X-Frame-Options などが代表例である。 用語集