¿Es peligroso permitir que los clientes se refieran a fonts.googleapis.com en sus scripts?

0

Estamos hospedando scripts creados por el cliente (xlst). Me pregunto si afectaría la seguridad de nuestra aplicación si permitimos que los clientes se refieran a las fuentes alojadas en, por ejemplo. %código%? Ya que serían referidos por una etiqueta fonts.googleapis.com , ¿nunca debería poder ejecutar ningún contenido de JavaScript?

Normalmente se permitirían esas fuentes externas, pero como estoy desarrollando una aplicación para un sector de la industria que es muy sensible, debo tener mucho más cuidado.

    
pregunta Kr15 14.02.2017 - 15:10
fuente

2 respuestas

3

En teoría, está cargando correctamente las hojas de estilo y las fuentes de un tercero, como usted dice, están incluidas en las etiquetas de enlace, que no deberían permitir la ejecución de scripts. Sin embargo, hay algunas cosas que podrían causar una fuga de información, y un potencial de ataque dirigido que podría dar lugar a cambios en los datos.

En términos de fuga de información, los navegadores envían por defecto un encabezado de referencia cuando cargan un recurso. Esto se enviará al proveedor de la fuente y, si sus enlaces están estructurados de una manera en la que está intentando usar valores desconocidos o de longitud en la URL como un método de protección, el proveedor de la fuente podría omitir eso. Sin embargo, si está realizando verificaciones de sesión, como hacen la mayoría de los sitios web con secciones autenticadas, el tercero no debería obtener los tokens de autenticación (generalmente cookies). Dado que estás trabajando en una industria sensible, espero que este no fuera el caso.

En cuanto a los datos que parecen cambiar, un proveedor de fuentes malintencionadas podría suministrar fuentes que se asignan de forma incorrecta. Imagínese si suministran íconos en una fuente, y está usando una marca o una cruz para indicar, por ejemplo, si se encontró que una muestra de sangre tenía una enfermedad específica. Al asignar el símbolo "tick" al valor "cruzado", y viceversa, un usuario final puede pensar que tiene alguna enfermedad debido a que se ve esto en la salida. Este sería un ataque muy específico, por lo que probablemente solo se aplicaría en casos muy específicos. Es poco probable que esto ocurra con Google Fonts, pero podría aplicarse si permitiera enlazar a fuentes web arbitrarias.

Tenga en cuenta que sería posible que cualquier hoja de estilo realice ataques similares; para datos confidenciales, generalmente vale la pena mantener cualquier cosa que pueda modificar el comportamiento o la apariencia de la aplicación alojada localmente, a menos que tenga requisitos específicos que lo hagan imposible.

Para datos confidenciales, le aconsejo que aloje las fuentes (y cualquier otra hoja de estilo y scripts), si es posible, solo para su tranquilidad.

    
respondido por el Matthew 14.02.2017 - 15:25
fuente
1

Los archivos de fuentes no pueden contener secuencias de comandos del lado del cliente.

Sin embargo, deberá permitir las ubicaciones dentro de cualquier Política de seguridad de contenido que utilizará ( font-src ), por lo tanto, será técnicamente más débil, pero no explotable.

Y, por supuesto, debe validar correctamente que no pueden eludir ninguna restricción al insertar el elemento link para insertar JavaScript en su lugar (p. ej., cerrar el <link/> y comenzar un <script> de alguna manera. Los detalles serán únicos para su aplicación, así que realmente no puedo comentar aquí en una respuesta general.

TLDR: Esto debería ser seguro siempre que tome las medidas básicas de seguridad a bordo dentro de su implementación.

    
respondido por el SilverlightFox 14.02.2017 - 15:24
fuente

Lea otras preguntas en las etiquetas