CSP: Protege tu web con esta política de seguridad

Fuentes: CSP for Pentesters: Understanding the Fundamentals

Este artículo de Kayssel.com, escrito por Ruben Santos Garcia, desglosa el Content Security Policy (CSP), una herramienta crucial para la seguridad web, a menudo mal entendida y mal implementada. En esencia, CSP actúa como un 'portero' para el navegador, definiendo de dónde puede cargar un sitio web recursos como scripts, estilos y objetos. El servidor envía una política al navegador, que luego bloquea cualquier recurso que no cumpla con las reglas establecidas. Si bien la idea es brillante, la configuración correcta es compleja y propensa a errores.

El funcionamiento de CSP se basa en 'directivas', cada una controlando un tipo específico de recurso. Directivas como script-src (controla la ejecución de JavaScript) y default-src (la directiva de respaldo si no se especifican otras) son fundamentales. El artículo destaca valores especiales como 'self' (mismo origen), 'none' (bloquea todo), 'unsafe-inline' (permite scripts en línea) y 'unsafe-eval' (permite funciones como eval()), cada uno con implicaciones de seguridad significativas. La presencia de 'unsafe-inline' o 'unsafe-eval' debilita significativamente la protección, permitiendo técnicas de Cross-Site Scripting (XSS) que de otro modo estarían bloqueadas. Asimismo, la ausencia de la directiva base-uri puede ser explotada para redirigir la carga de scripts a un dominio controlado por el atacante.

El artículo se centra en casos de uso para pentesters, revelando configuraciones comunes que fallan: la presencia de 'unsafe-inline', la omisión de base-uri, el uso excesivo de comodines (como *.example.com o https:) y la falta de la directiva object-src. Estos errores permiten a los atacantes inyectar código malicioso o redirigir la carga de recursos legítimos. La detección de CSP se realiza generalmente a través de herramientas de proxy como Burp Suite o inspeccionando las cabeceras HTTP en las herramientas de desarrollo del navegador.

En resumen, el artículo proporciona una guía práctica para comprender y evaluar la efectividad de las políticas CSP, enfatizando la importancia de una configuración precisa para mitigar riesgos de seguridad y la necesidad de que los pentesters comprendan a fondo cómo funciona CSP para identificar y explotar posibles vulnerabilidades.