midudev / la-velada-web-oficial

Web oficial de La Velada IV de Ibai Llanos
https://lavelada.es
Other
1.37k stars 621 forks source link

Seguridad: Headers STS, CSP y X-Content-Type #882

Closed alesnav closed 4 months ago

alesnav commented 5 months ago

Pre-requisitos

Comportamiento esperado

Se espera utilizar las cabecera HTTP necesarias para mejorar la posición de seguridad de la página web.

Comportamiento actual

Ninguna de las tres cabeceras en relativas a seguridad han sido implementadas.

Información del bug (si corresponde)

N/A

Pasos para reproducirlo

Comprobable fácil y directamente mediante Security Headers:

https://securityheaders.com/?q=lavelada.es&followRedirects=on

Contexto

Indiferente.

Logs de error (si corresponde)

No necesarios.

alesnav commented 5 months ago

¡¡Hola @midudev !!

He visto que ayer en el directo mostraste este issue (muchas gracias por prestar atención a la seguridad 👍 ) y que aparecía una valoración A en tu imagen, pero al comprobarlo en estos momentos veo que vuelve a aparecer como D.

image

image

Además, vi que confundiste entre sí los headers Content-Security-Policy (CSP) y Cross-Site Request Forgery (CSRF) en ese directo.

Por otro lado, veo que realmente hay un problema de incompatibilidad de Astro con las cabeceras CSP (si se despliegan de forma segura) y que se está discutiendo en un hilo de su repo (https://github.com/withastro/roadmap/discussions/377), ya que parece que no es viable eliminar la condición script-src: 'unsafe-inline' al utilizar Astro. Es decir, aunque se agregaran las cabeceras CSP, no sería del todo seguro, directamente por culpa de Astro al permitir explícitamente scripts de tipo unsafe-inline.

Finalmente, sobre CSRF, es cierto que Astro lo soporta de forma experimental en la última versión (https://astro.build/blog/astro-460/#experimental-support-for-csrf-protection), pero quizás se podría utilizar mediante los formularios de Astro Utils, aunque no lo he llegado a probar.

¡¡Gracias por todo el trabajo!!

midudev commented 4 months ago

CleanShot 2024-05-15 at 16 35 19@2x