X-XSS-Protection

El encabezado de respuesta HTTP X-XSS-Protection es una característica de Internet Explorer, Chrome y Safari que impide la carga de una página cuando detecta ataques del tipo Cross-Site (XSS). Esta protección ya no es necesaria en los navegadores modernos cuando el sitio implementa una fuerte Content-Security-Policy  que deshabilita el uso de Javascript inline ('unsafe-inline'). Sin embargo da protección a los usuarios de navegadores más antiguos que no soportan  CSP

Tipo de encabezado Response header
Nombre de encabezado prohibido no

Sintaxis

X-XSS-Protection: 0
X-XSS-Protection: 1
X-XSS-Protection: 1; mode=block
X-XSS-Protection: 1; report=<reporting-uri>
0
Desativa el filtro XSS.
1
Habilita el filtro XSS (generalmente está predeterminado en los navegadores). En caso de detección de un ataque cross-site scripting, el navegador sanitizará a página (eliminará las partes inseguras).
1; mode=block
Habilita el filtrado XSS. En vez de sanitizar la página, el navegador evitará la visualización de la página en caso de que algún ataque sea detectado.
1; report=<reporting-URI>  (Chromium solamente)
Habilita el filtro XSS. En caso de que algún ataque de cross-site scripting sea detectado, el navegador sanitizará la página e informará sobre la infracción. Utiliza la funcionalidad de la directiva CSP report-uri para enviar um reporte.

Ejemplo

Bloquea las páginas en las que se detecta un ataque 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>

Especificaciones

No forma parte de ninguna especificación o borrador.

Compatibilidad de los navegadores

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome para AndroidFirefox para AndroidOpera para AndroidSafari en iOSSamsung Internet
X-XSS-Protection
No estándar
Chrome Sin soporte 4 — 78Edge Sin soporte 12 — 17Firefox Sin soporte NoIE Soporte completo 8Opera Sin soporte ? — 65Safari Soporte completo SiWebView Android Sin soporte NoChrome Android Sin soporte ? — 78Firefox Android Sin soporte NoOpera Android Soporte completo SiSafari iOS Soporte completo SiSamsung Internet Android Soporte completo Si

Leyenda

Soporte completo  
Soporte completo
Sin soporte  
Sin soporte
No estandar . Esperar poco soporte entre navegadores.
No estandar . Esperar poco soporte entre navegadores.

Vea también