この翻訳は不完全です。英語から この記事を翻訳 してください。

HTTP X-XSS-Protection 応答ヘッダーは、Internet Explorer や Chrome、Safari においてクロスサイトスクリプティング(XSS) 攻撃を読み込むことを防止するための設定です。近年のブラウザであれば、インラインの JavaScript ('unsafe-inline') を抑制することに強いため、これらの防御はほぼ不必要となっていますが、 CSP をサポートしていない古いブラウザの利用者のために依然として、この対策が必要となります。
 
Header type Response header
Forbidden header name no

構文

X-XSS-Protection: 0
X-XSS-Protection: 1
X-XSS-Protection: 1; mode=block
X-XSS-Protection: 1; report=<reporting-uri>
0
XSS フィルタリングを無効化します。
1
XSS フィルタリングを有効化します(大抵のブラウザのデフォルトの設定です)。クロスサイトスクリプティング攻撃を検知すると、ブラウザはページをサニタイズします (安全でない部分を取り除きます)。
1; mode=block
XSS フィルタリングを有効化します。 攻撃を検知すると、ページをサニタイジングするよりも、ページのレンダリングを停止します。
1; report=<reporting-URI>  (Chromium only)
XSS フィルタリングを有効化します.  クロスサイトスクリプティング攻撃を検知すると、ブラウザはページをサニタイズし、攻撃レポートを作成します。レポートを送信するために、CSP report-uri ディレクティブ機能を利用します。

XSS攻撃が反映されたページを見つけたらその読み込みをブロックする場合:

X-XSS-Protection: 1; mode=block

PHP

header("X-XSS-Protection: 1; mode=block");

Apache (.htaccess)

<IfModule mod_headers.c> 
  Header set X-XSS-Protection "1; mode=block" 
</IfModule>

Nginx

add_header "X-XSS-Protection" "1; mode=block";

仕様書

仕様書や草案の一部はありません。

ブラウザーの対応

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
基本対応
非標準
Chrome 完全対応 ありEdge 完全対応 ありFirefox 未対応 なしIE 完全対応 8Opera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 未対応 なしOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android 完全対応 あり

凡例

完全対応  
完全対応
未対応  
未対応
非標準。ブラウザー間の互換性が低い可能性があります。
非標準。ブラウザー間の互換性が低い可能性があります。

関連情報

ドキュメントのタグと貢献者

このページの貢献者: kurimaru
最終更新者: kurimaru,