Saltar al contenido
uencoder

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'
    Output
    Only same-origin + nonce scripts can execute

    Whitelist

Errores comunes

CSP includes unsafe-inline, weakening protection
Replace unsafe-inline with a nonce or hash

Términos relacionados

References