Content Security Policy
Content Security Policy (CSP) declara, mediante una cabecera HTTP, una lista blanca de orígenes desde los que una página puede cargar recursos; es el mecanismo central de defensa contra XSS y la inyección de contenido.
Propósito
Restringir los orígenes de carga de recursos mediante una lista blanca, impidiendo que los scripts maliciosos inyectados se ejecuten en origen.
Mecanismo
La cabecera Content-Security-Policy contiene directivas: default-src (por defecto), script-src (scripts), style-src (estilos), img-src (imágenes), connect-src (fetch/XHR), etc. Los valores pueden ser 'self', dominios, nonces o hashes. report-uri especifica el reporte de violaciones. El CSP estricto usa nonce + strict-dynamic.
Casos de uso
- Defensa contra XSS
- Restricción de scripts de terceros
- Control de scripts inline
- Monitorización de violaciones
Ejemplos
- entrada
script-src 'self' 'nonce-abc123'OutputOnly same-origin + nonce scripts can executeWhitelist
Errores comunes
- CSP includes unsafe-inline, weakening protection
- Replace unsafe-inline with a nonce or hash
Términos relacionados
CSP
CSP (Content Security Policy) declara, mediante una cabecera HTTP, qué orígenes de recursos puede cargar una página, reduciendo la superficie de ataque de XSS e inyección de datos. GLOSARIO
XSS
XSS (cross-site scripting) es el ataque donde el atacante inyecta scripts maliciosos en una página que se ejecutan en el navegador de otros usuarios; tiene formas almacenadas, reflejadas y basadas en DOM. GLOSARIO
Security Header
Las cabeceras HTTP de seguridad son cabeceras de respuesta que ordenan al navegador activar mecanismos de seguridad, como CSP, HSTS y X-Frame-Options. GLOSARIO