Se ha lanzado el navegador web , así como Firefox 68.6 para la plataforma Android. Además, se ha formado una actualización con un largo período de soporte . Pronto pasará a la fase pasará a la rama de Firefox 75, cuyo lanzamiento está programado para el 7 de abril (proyecto de 4 a 5 semanas ). Para la rama beta de Firefox 75 formación para Linux en formato Flatpak.
:
- En las compilaciones para Linux se ha implementado un mecanismo de aislamiento , destinado a bloquear la explotación de vulnerabilidades en bibliotecas de funciones de terceros. En esta etapa, el aislamiento solo está habilitado para la biblioteca , que se encarga de la renderización de fuentes. RLBox compila el código C/C++ de la biblioteca aislada en un código intermedio de bajo nivel WebAssembly, que luego se envuelve en un módulo WebAssembly, cuyos permisos están restringidos solo a este módulo. El módulo compilado opera en una zona de memoria separada y no tiene acceso al resto del espacio de direcciones. En caso de que se explote una vulnerabilidad en la biblioteca, el atacante estará limitado y no podrá acceder a las áreas de memoria del proceso principal ni transferir el control fuera del entorno aislado.
- Modo DNS sobre HTTPS (DoH, DNS over HTTPS) para usuarios en EE. UU. CloudFlare (mozilla.cloudflare-dns.com) se ofrece como proveedor de DNS por defecto en del Roskomnadzor), y NextDNS está disponible como opción. Cambiar el proveedor o habilitar DoH en países distintos de EE. UU. en la configuración de la conexión de red. Para más información sobre DoH en Firefox, se puede leer en .
- Soporte para los protocolos TLS 1.0 y TLS 1.1. Para acceder a sitios web a través de un canal de comunicación seguro, el servidor debe proporcionar soporte para al menos TLS 1.2. Según datos de Google, actualmente aproximadamente el 0.5% de las cargas de páginas web continúa realizándose utilizando versiones obsoletas de TLS. La desactivación se ha realizado de acuerdo con IETF (Grupo de Trabajo de Ingeniería de Internet). La razón para abandonar el soporte de TLS 1.0/1.1 es la falta de soporte para cifrados modernos (por ejemplo, ECDHE y AEAD) y la exigencia de soporte para cifrados antiguos, cuya fiabilidad en la etapa actual del desarrollo de la computación está en duda (por ejemplo, se requiere soporte para TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, se utilizan MD5 y SHA-1 para verificar la integridad y autenticación). Al intentar utilizar TLS 1.0 y TLS 1.1 a partir de Firefox 74, se mostrará un error. La posibilidad de trabajar con versiones obsoletas de TLS se puede restaurar mediante la configuración security.tls.version.enable-deprecated = true o utilizando un botón en la página de error que aparece al intentar acceder a un sitio con un protocolo antiguo.
- En las notas de la versión se recomienda la extensión , que bloquea automáticamente los widgets de Facebook en sitios de terceros, utilizados para autenticación, envío de comentarios y me gusta. Los parámetros de identificación de Facebook se aíslan en un contenedor separado, dificultando la identificación del usuario con los sitios visitados. Se mantiene la posibilidad de trabajar con el sitio principal de Facebook, pero se aísla de otros sitios.
Para un aislamiento más flexible de sitios arbitrarios, se sugiere una extensión con la implementación del concepto de contenedores contextuales. Los contenedores permiten la aislamiento de diferentes tipos de contenido sin la necesidad de crear perfiles separados, lo que permite separar la información de distintos grupos de páginas. Por ejemplo, se puede crear áreas aisladas entre sí para comunicación personal, trabajo, compras y operaciones bancarias, o organizar el uso simultáneo de diferentes cuentas de usuario en un mismo sitio. En cada contenedor se utilizan almacenes separados para Cookies, API de Almacenamiento Local, indexedDB, caché y contenido de OriginAttributes.
- En about:config se ha añadido la configuración «browser.tabs.allowTabDetach», que permite prohibir la separación de pestañas en nuevas ventanas. La separación accidental de una pestaña es uno de los fallos más molestos de Firefox, cuya solución se ha buscado. 9 años. El navegador permite arrastrar una pestaña con el ratón a una nueva ventana, pero en determinadas circunstancias, la pestaña se separa en una ventana independiente y durante el trabajo se produce accidentalmente este movimiento durante un clic en la pestaña.
- soporte para complementos instalados de forma no convencional y no vinculados a perfiles de usuario. El cambio solo afecta a la instalación de complementos en directorios comunes (/usr/lib/mozilla/extensions/, /usr/share/mozilla/extensions/ o ~/.mozilla/extensions/), procesados por todas las instancias de Firefox en el sistema (sin vínculo al usuario). Este método se utiliza comúnmente para preinstalar complementos en distribuciones, para inyecciones no solicitadas junto con aplicaciones de terceros, para integrar complementos maliciosos o para la entrega aislada de un complemento con su propio instalador. En Firefox 73, los complementos instalados de forma forzada anteriormente se trasladaron automáticamente del directorio común a los perfiles individuales de los usuarios y ahora pueden ser a través del gestor de complementos estándar.
- En el complemento del sistema incluido en el navegador Lockwise, que ofrece la interfaz «about:logins» para gestionar las contraseñas guardadas, ha aparecido la opción de clasificación en orden inverso (de Z a A).
- En WebRTC se ha mejorado la protección contra la fuga de información sobre la dirección IP interna durante llamadas de voz y video mediante el mecanismo ««, ocultando la dirección local detrás de un identificador aleatorio generado dinámicamente, determinado a través de Multicast DNS.
- Se ha cambiado la ubicación del interruptor de modo de vista «imagen en imagen», que bloqueaba el botón para pasar a la siguiente imagen en la interfaz de carga masiva de fotos en Instagram.
- En JavaScript el operador «?.», destinado a verificar de una sola vez toda la cadena de propiedades o llamadas. Por ejemplo, al especificar «db?.user?.name?.length» ahora se puede acceder al valor «db.user.name.length» sin verificaciones previas. Si algún elemento se procesa como null o undefined, se emitirá el valor «undefined».
- soporte en sitios web y complementos del método Object.toSource() y de la función global uneval().
- Se agregó un nuevo evento y la propiedad asociada , que permiten invocar un manejador cuando el usuario cambia el idioma de la interfaz.
- Se ha activado el manejo de la cabecera HTTP (), que permite a los sitios web prohibir la inserción de recursos (por ejemplo, imágenes y scripts) cargados desde otros dominios (cross-origin y cross-site). La cabecera puede tener dos valores: «same-origin» (permite solo solicitudes de recursos con el mismo esquema, nombre de host y número de puerto) y «same-site» (permite solo solicitudes del mismo sitio).
Cross-Origin-Resource-Policy: same-site
- Se ha activado por defecto la cabecera HTTP , que permite gestionar el comportamiento de las API e incluir ciertas funcionalidades (por ejemplo, se puede desactivar el acceso a la API de Geolocalización, cámara, micrófono, pantalla completa, reproducción automática, medios cifrados, animaciones, API de Pago, modo síncrono de XMLHttpRequest, etc.). Para bloques iframe se ha propuesto el atributo ««, que puede aplicarse en el código de la página para asignar permisos a bloques iframe específicos.
<iframe src=»https://example.com» allow=»fullscreen»></iframe>
Feature-Policy: microphone ‘none’; geolocation ‘none’
Si el sitio permite el uso del atributo «allow» para trabajar con un recurso en un iframe, y se recibe una solicitud desde el iframe para obtener permisos para trabajar con este recurso, el navegador ahora muestra un diálogo de autorización en el contexto de la página principal y delega los derechos confirmados por el usuario al iframe (en lugar de una confirmación separada para el iframe y la página principal). Sin embargo, si la página principal no tiene permisos para el recurso solicitado a través del atributo allow, el acceso del iframe al recurso es inmediato , sin mostrar un diálogo al usuario.
- La propiedad CSS ‘‘, que define la posición del subrayado del texto (por ejemplo, al mostrar el texto verticalmente se puede organizar el subrayado a la izquierda o a la derecha, y al mostrarlo horizontalmente, no solo en la parte inferior, sino también en la parte superior). Además, en las propiedades CSS que controlan el estilo del subrayado y , se ha agregado soporte para el uso de valores en porcentaje.
- En la propiedad CSS , que define el estilo de la línea alrededor de los elementos, se ha permitido el uso del valor «auto» por defecto (anteriormente estaba debido a problemas en GNOME).
- En el depurador de JavaScript se ha añadido la capacidad de depurar Web Workers anidados, cuya ejecución puede ser pausada y depurada paso a paso utilizando puntos de interrupción.
- En la interfaz para inspeccionar páginas web, se ha asegurado la visualización de advertencias para las propiedades CSS que dependen de los elementos posicionados z-index, top, left, bottom y right.
- Para Windows y macOS se ha implementado la capacidad de importar perfiles desde el navegador Microsoft Edge basado en el motor Chromium.
Además de las novedades y correcciones de errores en Firefox 74, se han solucionado , de las cuales 10 (recopiladas bajo y ) están marcadas como potencialmente capaces de permitir la ejecución de código malicioso al abrir páginas especialmente diseñadas. Recordemos que los problemas de memoria, como desbordamientos de búfer y accesos a áreas de memoria ya liberadas, se han etiquetado recientemente como peligrosos pero no críticos.
Fuente: opennet.ru
