
Seguridad informática empresas
No configurar correctamente las cabeceras de tu sitio web, posible vulnerabilidad ante ataques cibernéticos
Prevenir vulnerabilidades ante posibles ataques a la web requiere, entre otros aspectos, de una correcta configuración de las cabeceras de seguridad del servidor. Explicamos en este post qué son las cabeceras de seguridad y sus tipos, los riesgos por no tenerlas configuradas correctamente, así como principales errores a la hora de llevar a cabo esa configuración.
¡Atención! Si no configuras las cabeceras HTTP adecuadamente, podrías estar exponiendo tu sitio a riesgos como:
- Cross-Site Scripting (XSS): Los atacantes pueden inyectar scripts maliciosos en tu sitio, robando datos sensibles de tus usuarios.
- Clickjacking: Sin la cabecera X-Frame-Options, tu sitio puede ser incorporado en otros sitios maliciosos, engañando a los usuarios para que realicen acciones no deseadas.
- Inyección de contenido: La falta de la cabecera Content-Security-Policy permite que contenido no autorizado se cargue en tu sitio, comprometiendo la seguridad.
Una mala configuración es una de las principales causas de ataques a sitios web
¡No te arriesgues! Asegúrate de configurar correctamente las cabeceras de seguridad en tu servidor web para proteger tu sitio y a tus usuarios.

Cabeceras de seguridad web: Protección esencial para las aplicaciones web
Las cabeceras web son implementadas y configuradas principalmente por los desarrolladores web y los administradores de sistema al construir y desplegar una aplicación web. Estas configuraciones se establecen en los servidores web y en la aplicación desde el principio.
¿Qué son las cabeceras web?
Las cabeceras web son una serie de datos que se envían junto con las solicitudes y respuestas entre el navegador y el servidor cuando visitas una página web. Funcionan como instrucciones que indican cómo se debe gestionar la conexión, qué tipo de contenido se puede cargar, y cómo debe comportarse el navegador con respecto a la seguridad y el manejo de la información.
Estas cabeceras definen reglas sobre cómo debe comportarse el navegador con respecto al contenido y la seguridad de la aplicación. Son fundamentales para mitigar diversos riesgos y ataques como Cross-Site Scripting (XSS), clickjacking, y la carga de contenido no seguro.
Conocer estas cabeceras y configurarlas correctamente es esencial para reforzar la seguridad de una aplicación web y proteger los datos de los usuarios.
Importancia de las cabeceras de seguridad
Las cabeceras de seguridad cumplen un papel crucial en la protección de una aplicación web, ya que ayudan a prevenir varios tipos de ataques y aseguran que los datos de los usuarios se mantengan seguros. Sus beneficios principales son:
- Seguridad: Ayudan a mitigar riesgos comunes como Cross-Site Scripting (XSS), clickjacking, y ataques de intermediarios (Man-in-the-Middle, MitM).
- Velocidad y rendimiento: Mejoran la gestión de la memoria caché para optimizar la carga de la web.
- Experiencia de usuario: Permiten manejar mejor los errores y proteger la privacidad de los usuarios.
Principales cabeceras de seguridad y su configuración
Para que estas cabeceras cumplan su función de manera efectiva, es importante que estén configuradas correctamente. A continuación, se presentan algunas de las cabeceras más importantes, su propósito y cómo deben configurarse:
- Content-Security-Policy (CSP):
- Propósito: Limita de dónde se pueden cargar recursos como scripts, imágenes y estilos. Protege contra inyecciones de código malicioso.
- Configuración recomendada: Especificar dominios confiables y evitar el uso de unsafe-inline para una mayor protección.
- Strict-Transport-Security (HSTS):
- Propósito: Obliga a que todas las conexiones se realicen mediante HTTPS, evitando que la comunicación sea interceptada.
- Configuración recomendada: Usar max-age alto y includeSubDomains para asegurar todas las conexiones de un dominio.
- X-Frame-Options:
- Propósito: Evita que la web se muestre dentro de un iframe en otros sitios, protegiendo contra ataques de clickjacking.
- Configuración recomendada: Usar DENY para bloquear todos los iframes, o SAMEORIGIN para permitir solo aquellos que provienen del mismo dominio.
- X-Content-Type-Options:
- Propósito: Indica al navegador que no intente adivinar el tipo de archivo, evitando la ejecución de contenido potencialmente peligroso.
- Configuración recomendada: nosniff, para que el navegador respete el tipo de archivo enviado por el servidor.
- Cache-Control:
- Propósito: Define cómo y por cuánto tiempo se deben almacenar en caché ciertos elementos de la página.
- Configuración recomendada: no-store para contenido sensible como datos de inicio de sesión.
Errores más comunes en la configuración de cabeceras
La mala configuración de las cabeceras de seguridad es un problema habitual que puede dejar a las aplicaciones vulnerables. Algunos de los errores más frecuentes son:
- Falta de CSP: Esto permite que se ejecuten scripts maliciosos, exponiendo la aplicación a ataques XSS.
- HSTS no configurado: Sin esta cabecera, las conexiones pueden ser vulnerables a ataques MitM.
- X-Frame-Options ausente: Permite que otros sitios web incrusten la página en un iframe, lo que puede facilitar ataques de clickjacking.
- Configuración de CORS demasiado permisiva: Access-Control-Allow-Origin: * puede exponer la aplicación a la manipulación desde cualquier dominio.
- X-Content-Type-Options no configurado: Deja al navegador la posibilidad de adivinar el tipo de contenido, aumentando el riesgo de ejecución de archivos no deseados.

Vulnerabilidades comunes asociadas y CVEs relevantes
La ausencia o mala configuración de estas cabeceras puede llevar a diversas vulnerabilidades. A continuación, se presentan algunas de las más comunes junto a CVEs relevantes:
1.- Cross-Site Scripting (XSS):
- Descripción: Ocurre cuando una aplicación web permite que un atacante inyecte scripts maliciosos en las páginas vistas por otros usuarios. Esto puede suceder si no se usa la cabecera Content-Security-Policy (CSP) para limitar de dónde se pueden cargar scripts.
- CVE relevante: CVE-2020-8637. – XSS debido a la falta de validación de entrada y ausencia de CSP.

2.- Clickjacking:
- Descripción: Descripción: Se da cuando un sitio web malicioso carga otro sitio web legítimo dentro de un iframe, haciendo que el usuario interactúe sin darse cuenta con elementos ocultos. Esto puede prevenirse usando la cabecera X-Frame-Options.
- CVE relevante: CVE-2018-7747. – Falta de protección contra clickjacking en varias interfaces web debido a la ausencia de X-Frame-Options.

3.- HTTP Strict Transport Security (HSTS):
- Descripción: Si un sitio no utiliza la cabecera Strict-Transport-Security (HSTS), puede quedar vulnerable a ataques de Man-in-the-Middle (MitM), donde un atacante intercepta la comunicación entre el navegador y el servidor.
- CVE relevante: CVE-2019-13467 – Vulnerabilidad de falta de HSTS que permite interceptar sesiones no seguras.

4.- MIME Type Sniffing:
- Descripción: Ocurre cuando el navegador intenta adivinar el tipo de contenido de un archivo y ejecuta algo que no debería. Esto se mitiga con la cabecera X-Content-Type-Options.
- CVE relevante: CVE-2018-20676 – Falta de X-Content-Type-Options, lo que permite a los atacantes realizar XSS mediante contenido malinterpretado.

5.- Cross-Site Request Forgery (CSRF):
- Descripción: Si una aplicación no valida correctamente las solicitudes que provienen de otros sitios, puede ser vulnerable a CSRF. Aunque no existe una cabecera específica para mitigarlo, la ausencia de CSP y el uso incorrecto de cookies pueden facilitar este tipo de ataques.
- CVE relevante: CVE-2019-19880 – Vulnerabilidad CSRF debido a la falta de restricciones adecuadas y protección.

Conclusión: La importancia de una configuración segura
Las cabeceras de seguridad son una primera línea de defensa esencial para cualquier aplicación web. Aseguran que la comunicación entre el servidor y el navegador sea segura y que la experiencia del usuario esté protegida contra amenazas comunes. Para una aplicación web segura, es vital revisar regularmente la configuración de estas cabeceras y ajustarlas según las mejores prácticas. Esto no solo mejora la seguridad, sino también la confianza de los usuarios en la plataforma.
Ciberso, empresa de ciberseguridad, ofrece asesoramiento y diferentes servicios con una visión integral de protección y una respuesta ágil al riesgo. Ayudamos a reforzar la seguridad de las empresas y organizaciones(infraestructura y sistemas, e información) y en los ciclos de vida de desarrollo de aplicaciones y web, así como en la labor de concienciación y formación necesarias.
Enlaces de interés:
Proyecto de encabezados seguros OWASP | Fundación OWASP
Cross Site Scripting Prevention – OWASP Cheat Sheet Series
Clickjacking Defense – OWASP Cheat Sheet Series
HTTP Strict Transport Security – OWASP Cheat Sheet Series
XML Security – OWASP Cheat Sheet Series
Cross-Site Request Forgery Prevention – OWASP Cheat Sheet Series