--- title: X-XSS-Protection slug: Web/HTTP/Headers/X-XSS-Protection tags: - HTTP - Reference - XSS - セキュリティ - ヘッダー translation_of: Web/HTTP/Headers/X-XSS-Protection ---
HTTP の X-XSS-Protection
レスポンスヘッダーは Internet Explorer, Chrome, Safari の機能で、反射型クロスサイトスクリプティング ({{Glossary("XSS")}}) 攻撃を検出したときに、ページの読み込みを停止するためのものです。強い {{HTTPHeader("Content-Security-Policy")}} をサイトが実装して、インライン JavaScript の使用を無効にしていれば ('unsafe-inline'
)、現在のブラウザーではこれらの防御は大枠で不要なものですが、まだ {{Glossary("CSP")}} に対応していない古いウェブブラウザーを使用しているユーザーには防御になります。
X-XSS-Protection
を今後も実装しませんつまり、レガシーブラウザをサポートする必要がない場合は、代わりに Content-Security-Policy
を使用し unsafe-inline
を許可しないことをお勧めします。
ヘッダー種別 | {{Glossary("Response header", "レスポンスヘッダー")}} |
---|---|
{{Glossary("Forbidden header name", "禁止ヘッダー名")}} | いいえ |
X-XSS-Protection: 0 X-XSS-Protection: 1 X-XSS-Protection: 1; mode=block X-XSS-Protection: 1; report=<reporting-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";
仕様書や草案で定義されたものではありません。
{{Compat("http.headers.X-XSS-Protection")}}