HTTPヘッダーの一つであるX-XSS-Protectionの概要についてメモする。
X-XSS-Protectionとは
-
ブラウザの「XSS フィルタ」を有効にするためのHTTPヘッダー。
-
反射型クロスサイトスクリプティング攻撃を検出したときに、ページの読み込みを停止する。
- 反射型クロスサイトスクリプティング・・・攻撃者は偽メールや偽サイトに不正なスクリプトを含んだリンクを用意し、脆弱性のあるサイトに誘導する(リクエストさせる)ことで、ユーザのブラウザで不正なスクリプトを実行させ、情報の搾取やマルウェアダウンロードなどを行わせる攻撃
-
ブラウザには、XSSのブロック機能を備えたものがある。しかし、ユーザの設定によっては無効になっている場合があるため、サーバ側から明示的に有効にするために使用する。
設定値
-
0
- XSS フィルタリングを無効化する
-
1
- XSS フィルタリングを有効化する
- XSSを検知すると、ブラウザはページをサニタイズする
-
1; mode=block
- XSS フィルタリングを有効化する
- XSSを検知すると、ページをサニタイジングするのではなく、レンダリングを停止する
-
1; report=<reporting-uri>
- XSS フィルタリングを有効化する
- XSSを検知すると、ブラウザはページをサニタイズし、攻撃レポートを作成・送信する
- 送信先はに指定する