Exploiting clickjacking vulnerability to trigger DOM-based XSS
概要
クリックジャッキング脆弱性を利用して、DOM-based XSSを引き起こす攻撃手法
攻撃手順
- ボタン押下時の処理を調査し、DOM-based XSSが発生する箇所を特定
- 当該ボタンが存在するページを透明化したiframeで読み込み重なりを奥にする。「クリックして」などと誘導するテキストを重なりを手前で表示するためのエクスプロイトを作成
- 被害者がエクスプロイトサーバへアクセスすると、クリックジャッキングを引き起こさせるための画面を表示する
対策
- x-frame-optionsに、DENY又はSAMEORIGINを設定する
- Content Security Policyに、frame-ancestorsディレクティブを設定する
- 設定値をnoneにすることで、全てのドメインからのフレーム埋め込みを防止できる
- 設定値を特定のドメインにすることで、指定したドメインからのみのフレーム埋め込みを許可できる
- 設定値をselfにすることで、自身と同一のドメインからのみのフレーム埋め込みを許可できる