Semana de la seguridad 20: deshabilitar las extensiones de Firefox

El 4 de mayo, a las cuatro de la mañana en Moscú (o un poco más tarde, dependiendo de la suerte), todas las extensiones instaladas dejaron de funcionar para los usuarios del navegador Firefox, y la instalación de nuevos complementos se hizo imposible. El problema estaba en el lado del navegador: el certificado intermedio, mediante el cual se firman todas las extensiones, ha expirado. Este evento tiene una relación indirecta con la seguridad de la información: la mala suerte surgió como resultado del deseo lógico de los desarrolladores de proteger a los usuarios de extensiones maliciosas (a partir de 2015) y debido al hecho de que nadie notó que el certificado caducará pronto.

Sin embargo, esta es una historia interesante con un final moderadamente feliz: un problema bastante trivial se resolvió en 12 horas. Este también es un incidente bien documentado, con mucha información de los desarrolladores y una increíble cantidad de drama de los usuarios. En el proceso, surgió el problema de la privacidad, que se resolvió de manera bastante efectiva.

Los primeros informes de problemas con extensiones aparecieron antes del vencimiento del certificado, el 3 de mayo. Hay al menos una de esas discusiones sobre Reddit. El autor del hilo en la computadora tenía una fecha incorrecta, por lo que fue uno de los primeros en enterarse del error (y lo "arregló" estableciendo la fecha correcta, pero no por mucho tiempo). Un poco más tarde, el problema apareció para todos los usuarios, pero en diferentes momentos: la validez de los certificados por los que se firman las extensiones se verifica una vez cada 24 horas. Aquí se describe más historia con diversos grados de detalle: noticias , informe de errores , soporte técnico , una publicación de blog con detalles técnicos y una historia sobre el incidente en nombre de CTO Firefox.


Así es como se ve el proceso de firmar extensiones en Firefox. El certificado raíz en la parte superior de la cadena se encuentra en el almacenamiento fuera de línea, y una vez cada varios años con su ayuda se crea un certificado intermedio con el que se firman las extensiones. Fue el certificado provisional que expiró el 4 de mayo. La primera solución por parte de los desarrolladores de Firefox fue el lanzamiento de un parche que detiene temporalmente la validación de los certificados de extensión. Si tal parche voló a usted antes de la verificación, entonces el problema le ha pasado. Además, los desarrolladores tenían dos formas: emitir una nueva versión de Firefox o un nuevo certificado, que hará firmas de extensiones válidas en la versión actual. Fue imposible volver a firmar todas las adiciones (más de 15 mil). Más precisamente, tal vez, pero habría tomado mucho tiempo.


Debido a los plazos ajustados (¡descubrieron el problema en Firefox la noche del 3 de mayo, por supuesto, el viernes!), Se decidió investigar ambas opciones. Técnicamente, había una oportunidad para emitir un nuevo certificado, a) era necesario generar este certificado yb) entregarlo a los usuarios lo más rápido posible. La primera parte fue complicada por el hecho de que el certificado raíz se almacena en el módulo de hardware, que aún debe alcanzarse (¿ en el bosque? ¿En la celda del banco? ). Además, cuando los desarrolladores llegaron al certificado raíz, no fue posible generar de inmediato un nuevo certificado intermedio, y esto cada vez condujo a la pérdida de una o dos horas para las pruebas necesarias. ¿Cómo entregar? Para hacer esto, utilizamos el mecanismo de Estudios de Firefox, de hecho, el sistema de distribución de complementos "del desarrollador del navegador", que en casos normales está destinado a código experimental. Resultó más rápido que construir una nueva compilación y enviar la actualización a través de canales regulares.


Pero aquí surgió el mismo problema de privacidad. Firefox Studies, como sistema experimental, solo se incluye cuando se envía información de uso del navegador a los desarrolladores de Firefox. Esto es lógico para las pruebas beta, pero parece un poco extraño en el contexto de entregar un parche que generalmente necesitan todos los usuarios. Este problema se resolvió con elegancia: Firefox decidió eliminar toda la telemetría recibida del 4 al 11 de mayo.

Esta no fue una solución ideal. Aquellos con telemetría deshabilitada (y Estudios) tuvieron que habilitar manualmente estas opciones. En algunas versiones, esta opción no está disponible. La versión de Android del navegador no es compatible con Estudios. Usuarios permanentemente afectados de versiones anteriores de Firefox que no desean actualizarse, pero usan complementos. El 8 de mayo, se lanzaron las versiones de Firefox 66.0.5 y Firefox ESR 60.6.3 , en las que finalmente se resolvió el problema con el certificado, y ya no se necesitaban estudios con telemetría. Se planean actualizaciones para versiones anteriores del navegador, comenzando con Firefox 52. El problema se resolvió, pero para muchos usuarios no pasó sin dejar rastro; hay casos de pérdida de datos y configuraciones en las extensiones.

Hay dos conclusiones de esta historia. En primer lugar, Firefox prometió establecer un sistema de seguimiento de "bomba de tiempo" en la infraestructura para evitar que esto suceda en el futuro. En segundo lugar, quedó claro que incluso un sistema de distribución de actualizaciones más o menos moderno, con diferentes métodos para entregar parches a los usuarios, no es tan efectivo como nos gustaría. Según CTO Firefox, los usuarios del navegador deberían poder recibir actualizaciones y revisiones, incluso si desean deshabilitar cualquier otra función experimental y / o telemetría. Esta es una historia de final feliz, que puede conducir a una mejora en el mecanismo de actualización de Firefox, un navegador convencional poco común que no está vinculado a ninguna de las principales empresas de TI. Pero no olvide que ella comenzó con disparos alegóricos en sus propias piernas.

Descargo de responsabilidad: las opiniones expresadas en este resumen pueden no coincidir siempre con la posición oficial de Kaspersky Lab. Los estimados editores generalmente recomiendan tratar cualquier opinión con escepticismo saludable.

Source: https://habr.com/ru/post/451610/


All Articles