Chrome 86

Se han lanzado la próxima versión de Chrome 86 y la versión estable de Chromium.

Cambios clave en Chrome 86:

  • protección contra el envío inseguro de formularios de entrada en páginas cargadas a través de HTTPS pero que envían datos a través de HTTP.
  • El bloqueo de descargas no seguras (http) de archivos ejecutables se complementa con el bloqueo de descargas no seguras de archivos (zip, iso, etc.) y la visualización de advertencias sobre descargas no seguras de documentos (docx, pdf, etc.). En la próxima versión se esperan bloqueos de documentos y advertencias para imágenes, texto y archivos multimedia. El bloqueo se implementa porque la descarga de archivos sin cifrado se puede utilizar para realizar acciones maliciosas al reemplazar el contenido durante los ataques MITM.
  • El menú contextual predeterminado muestra la opción "Mostrar siempre la URL completa", que anteriormente requería cambiar la configuración en la página about:flags para habilitarla. La URL completa también se puede ver haciendo doble clic en la barra de direcciones. Te recordamos que a partir de Chrome 76, por defecto se empezó a mostrar la dirección sin el protocolo y el subdominio www. En Chrome 79, se eliminó la configuración para devolver el comportamiento anterior, pero después de la insatisfacción del usuario, se agregó una nueva bandera experimental en Chrome 83 que agrega una opción al menú contextual para deshabilitar la ocultación y la visualización de la URL completa en todas las condiciones.
    Para un pequeño porcentaje de usuarios, se ha lanzado un experimento para mostrar solo el dominio en la barra de direcciones de forma predeterminada, sin elementos de ruta ni parámetros de consulta. Por ejemplo, en lugar de "https://example.com/secure-google-sign-in/" Se mostrará "ejemplo.com". Se espera que el modo propuesto llegue a todos los usuarios en una de las próximas versiones. Para desactivar este comportamiento, puede utilizar la opción "Mostrar siempre la URL completa" y, para ver la URL completa, puede hacer clic en la barra de direcciones. El motivo del cambio es el deseo de proteger a los usuarios del phishing que manipula los parámetros en la URL: los atacantes aprovechan la falta de atención de los usuarios para crear la apariencia de estar abriendo otro sitio y cometiendo acciones fraudulentas (si dichas sustituciones son obvias para un usuario técnicamente competente). , entonces las personas sin experiencia caen fácilmente en una manipulación tan simple).
  • Se ha renovado la iniciativa para eliminar el soporte FTP. En Chrome 86, FTP está deshabilitado de forma predeterminada para aproximadamente el 1% de los usuarios, y en Chrome 87 el alcance de la deshabilitación aumentará al 50%, pero se puede recuperar el soporte usando "--enable-ftp" o "- -enable-features=FtpProtocol" bandera. En Chrome 88, la compatibilidad con FTP estará completamente deshabilitada.
  • En la versión para Android, similar a la versión para sistemas de escritorio, el administrador de contraseñas implementa una verificación de los inicios de sesión y contraseñas guardadas en una base de datos de cuentas comprometidas, mostrando una advertencia si se detectan problemas o se intenta usar contraseñas triviales. La verificación se lleva a cabo en una base de datos que cubre más de 4 mil millones de cuentas comprometidas que aparecieron en bases de datos de usuarios filtradas. Para mantener la privacidad, el prefijo hash se verifica por parte del usuario y las contraseñas en sí y sus hashes completos no se transmiten externamente.
  • El botón "Comprobación de seguridad" y el modo de protección mejorada contra sitios peligrosos (Enhanced Safe Browsing) también se han transferido a la versión de Android. El botón "Comprobación de seguridad" muestra un resumen de posibles problemas de seguridad, como el uso de contraseñas comprometidas, el estado de la comprobación de sitios maliciosos (Navegación segura), la presencia de actualizaciones desinstaladas y la identificación de complementos maliciosos. El modo de protección avanzada activa comprobaciones adicionales para proteger contra phishing, actividad maliciosa y otras amenazas en la Web, y también incluye protección adicional para su cuenta de Google y los servicios de Google (Gmail, Drive, etc.). Si en el modo de Navegación segura normal las comprobaciones se realizan localmente utilizando una base de datos cargada periódicamente en el sistema del cliente, en la Navegación segura mejorada la información sobre las páginas y las descargas en tiempo real se envía para su verificación por parte de Google, lo que le permite responder rápidamente a amenazas inmediatamente después de ser identificadas, sin esperar hasta que se actualice la lista negra local.
  • Se agregó soporte para el archivo indicador ".well-known/change-password", con el que los propietarios del sitio pueden especificar la dirección del formulario web para cambiar la contraseña. Si las credenciales de un usuario se ven comprometidas, Chrome ahora le solicitará inmediatamente un formulario de cambio de contraseña basado en la información de este archivo.
  • Se implementó una nueva advertencia de "Consejo de seguridad", que se muestra al abrir sitios cuyo dominio es muy similar a otro sitio y la heurística muestra que existe una alta probabilidad de suplantación de identidad (por ejemplo, se abre goog0le.com en lugar de google.com).

    * Se ha implementado la compatibilidad con el caché Atrás-adelante, lo que proporciona navegación instantánea cuando se utilizan los botones "Atrás" y "Adelante" o cuando se navega por páginas vistas anteriormente del sitio actual. El caché se habilita usando la configuración chrome://flags/#back-forward-cache.

  • Optimización del consumo de recursos de la CPU para ventanas fuera de alcance. Chrome comprueba si la ventana del navegador está superpuesta con otras ventanas y evita dibujar píxeles en áreas superpuestas. Esta optimización se habilitó para un pequeño porcentaje de usuarios en Chrome 84 y 85 y ahora está habilitada en todas partes. En comparación con versiones anteriores, también se ha solucionado una incompatibilidad con los sistemas de virtualización que provocaba la aparición de páginas en blanco.
  • Mayor recorte de recursos para pestañas de fondo. Estas pestañas ya no pueden consumir más del 1% de los recursos de la CPU y no pueden activarse más de una vez por minuto. Después de cinco minutos de estar en segundo plano, las pestañas se congelan, a excepción de las pestañas que están reproduciendo contenido multimedia o grabando.
  • Se ha reanudado el trabajo para unificar el encabezado HTTP User-Agent. En la nueva versión, la compatibilidad con el mecanismo User-Agent Client Hints, desarrollado como reemplazo de User-Agent, está activada para todos los usuarios. El nuevo mecanismo implica devolver selectivamente datos sobre parámetros específicos del navegador y del sistema (versión, plataforma, etc.) solo después de una solicitud del servidor y brindar a los usuarios la oportunidad de proporcionar selectivamente dicha información a los propietarios del sitio. Cuando se utilizan sugerencias de cliente de agente de usuario, el identificador no se transmite de forma predeterminada sin una solicitud explícita, lo que hace imposible la identificación pasiva (de forma predeterminada, solo se indica el nombre del navegador).
    Se ha cambiado la indicación de la presencia de una actualización y la necesidad de reiniciar el navegador para instalarla. En lugar de una flecha de color, ahora aparece "Actualizar" en el campo del avatar de la cuenta.
  • Se ha trabajado para convertir el navegador para que utilice terminología inclusiva. En los nombres de las políticas, las palabras "lista blanca" y "lista negra" se reemplazaron por "lista permitida" y "lista bloqueada" (las políticas ya agregadas seguirán funcionando, pero mostrarán una advertencia sobre su obsolescencia). En el código y los nombres de archivos, las referencias a "lista negra" se han reemplazado por "lista de bloqueo". Las referencias visibles para el usuario a “lista negra” y “lista blanca” fueron reemplazadas a principios de 2019.
    Se agregó una capacidad experimental para editar contraseñas guardadas, activada usando la bandera "chrome://flags/#edit-passwords-in-settings".
  • La API del sistema de archivos nativo se ha transferido a la categoría de API estable y disponible públicamente, lo que le permite crear aplicaciones web que interactúan con archivos en el sistema de archivos local. Por ejemplo, la nueva API puede tener demanda en entornos de desarrollo integrados basados ​​en navegador, editores de texto, imágenes y vídeo. Para poder escribir y leer archivos directamente o utilizar cuadros de diálogo para abrir y guardar archivos, así como navegar por el contenido de los directorios, la aplicación solicita al usuario una confirmación especial.
  • Se agregó un selector CSS ":focus-visible", que usa la misma heurística que usa el navegador al decidir si mostrar el indicador de cambio de enfoque (al mover el foco a un botón usando atajos de teclado, el indicador aparece, pero al hacer clic con el mouse , no es asi). El selector CSS ":focus" disponible anteriormente siempre resalta el foco. Además, se agregó la opción "Resaltado de enfoque rápido" a la configuración; cuando está habilitada, se mostrará un indicador de enfoque adicional junto a los elementos activos, que permanece visible incluso si los elementos de estilo para resaltar visualmente el enfoque están deshabilitados en la página a través de CSS. .
  • Se han agregado varias API nuevas al modo de prueba de Origin (funciones experimentales que requieren activación por separado). Origin Trial implica la capacidad de trabajar con la API especificada desde aplicaciones descargadas de localhost o 127.0.0.1, o después de registrarse y recibir un token especial que es válido por un tiempo limitado para un sitio específico.
  • API WebHID para acceso de bajo nivel a dispositivos HID (dispositivos de interfaz humana, teclados, ratones, gamepads, paneles táctiles), que le permite implementar la lógica de trabajar con un dispositivo HID en JavaScript para organizar el trabajo con dispositivos HID raros sin la presencia de controladores específicos en el sistema. En primer lugar, la nueva API tiene como objetivo brindar soporte para gamepads.
  • API de información de pantalla, amplía la API de ubicación de ventanas para admitir configuraciones de pantallas múltiples. A diferencia de window.screen, la nueva API le permite manipular la ubicación de una ventana en el espacio general de la pantalla de sistemas de múltiples monitores, sin limitarse a la pantalla actual.
  • Metaetiqueta de ahorro de batería, con la que el sitio puede informar al navegador sobre la necesidad de activar modos para reducir el consumo de energía y optimizar la carga de la CPU.
  • API de informes COOP para informar posibles violaciones de los modos de aislamiento Cross-Origin-Embedder-Policy (COEP) y Cross-Origin-Opener-Policy (COOP), sin aplicar restricciones reales.
  • La API de administración de credenciales ofrece un nuevo tipo de credenciales, PaymentCredential, que proporciona confirmación adicional de la transacción de pago que se realiza. Una parte que confía, como un banco, tiene la capacidad de generar una clave pública, una PublicKeyCredential, que el comerciante puede solicitar para obtener una confirmación de pago segura adicional.
  • La API PointerEvents para determinar la inclinación del lápiz* ha agregado soporte para ángulos de elevación (el ángulo entre el lápiz y la pantalla) y acimut (el ángulo entre el eje X y la proyección del lápiz en la pantalla), en lugar del Ángulos TiltX e TiltY (los ángulos entre el plano del lápiz y uno de los ejes y el plano de los ejes Y y Z). También se agregaron funciones de conversión entre altitud/azimut y TiltX/TiltY.
  • Se cambió la codificación del espacio en las URL al calcularlo en los controladores de protocolo: el método navigator.registerProtocolHandler() ahora reemplaza los espacios con "%20" en lugar de "+", lo que unifica el comportamiento con otros navegadores como Firefox.
  • Se ha agregado un pseudoelemento "::marker" a CSS, que le permite personalizar el color, tamaño, forma y tipo de números y puntos para listados en bloques. Y .
  • Se agregó soporte para el encabezado HTTP Document-Policy, que le permite establecer reglas para acceder a documentos, similar al mecanismo de aislamiento de espacio aislado para iframes, pero más universal. Por ejemplo, a través de Document-Policy puede limitar el uso de imágenes de baja calidad, deshabilitar las API de JavaScript lentas, configurar reglas para cargar iframes, imágenes y scripts, limitar el tamaño general del documento y el tráfico, prohibir métodos que conduzcan a volver a dibujar la página y deshabilite la función de desplazamiento a texto.
  • al elemento Se agregó soporte para los parámetros 'inline-grid', 'grid', 'inline-flex' y 'flex' establecidos a través de la propiedad CSS 'display'.
  • Se agregó el método ParentNode.replaceChildren() para reemplazar todos los hijos de un nodo principal con otro nodo DOM. Anteriormente, podías usar una combinación de node.removeChild() y node.append() o node.innerHTML y node.append() para reemplazar nodos.
  • Se ha ampliado la gama de esquemas de URL que se pueden anular utilizando RegisterProtocolHandler(). La lista de esquemas incluye los protocolos descentralizados cabal, dat, did, dweb, ethereum, hyper, ipfs, ipns y ssb, que permiten definir enlaces a elementos independientemente del sitio o puerta de enlace que proporciona acceso al recurso.
  • Se agregó soporte para formato texto/html a la API del Portapapeles asíncrono para copiar y pegar HTML a través del portapapeles (las construcciones HTML peligrosas se limpian al escribir y leer en el portapapeles). El cambio, por ejemplo, permite organizar la inserción y copia de texto formateado con imágenes y enlaces en editores web.
  • WebRTC ha agregado la capacidad de conectar sus propios controladores de datos, llamados en las etapas de codificación o decodificación de WebRTC MediaStreamTrack. Por ejemplo, esta capacidad se puede utilizar para agregar soporte para el cifrado de extremo a extremo de datos transmitidos a través de servidores intermedios.
    En el motor JavaScript V8, la implementación de Number.prototype.toString se ha acelerado en un 75%. Se agregó la propiedad .name a clases asincrónicas con un valor vacío. Se eliminó el método Atomics.wake, que en un momento pasó a llamarse Atomics.notify para cumplir con la especificación ECMA-262. El código para la herramienta de prueba de fuzzing JS-Fuzzer está abierto.
  • El compilador de referencia Liftoff para WebAssembly lanzado en la última versión incluye la capacidad de utilizar instrucciones vectoriales SIMD para acelerar los cálculos. A juzgar por las pruebas, la optimización permitió acelerar algunas pruebas 2.8 veces. Otra optimización hizo que fuera mucho más rápido llamar a funciones JavaScript importadas desde WebAssembly.
  • Se han ampliado las herramientas para desarrolladores web: el panel Medios ha agregado información sobre los reproductores utilizados para reproducir videos en la página, incluidos datos de eventos, registros, valores de propiedades y parámetros de decodificación de fotogramas (por ejemplo, puede determinar las causas de la aparición de fotogramas). problemas de pérdida e interacción desde JavaScript).
  • En el menú contextual del panel Elementos, se ha agregado la capacidad de crear capturas de pantalla del elemento seleccionado (por ejemplo, puede crear una captura de pantalla de la tabla de contenido o tabla).
  • En la consola web, el panel de advertencia de problemas se reemplazó con un mensaje normal y los problemas con las cookies de terceros están ocultos de forma predeterminada en la pestaña Problemas y se habilitan con una casilla de verificación especial.
  • En la pestaña Representación, se agregó un botón "Desactivar fuentes locales", que le permite simular la ausencia de fuentes locales, y en la pestaña Sensores ahora puede simular la inactividad del usuario (para aplicaciones que usan la API de detección inactiva).
  • El panel Aplicación proporciona información detallada sobre cada iframe, ventana abierta y ventana emergente, incluida información sobre el aislamiento entre orígenes mediante COEP y COOP.

La implementación del protocolo QUIC ha comenzado a ser reemplazada por la versión desarrollada en la especificación IETF, en lugar de la versión de QUIC de Google.
Además de las innovaciones y correcciones de errores, la nueva versión elimina 35 vulnerabilidades. Muchas de las vulnerabilidades se identificaron como resultado de pruebas automatizadas utilizando las herramientas AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer y AFL. Una vulnerabilidad (CVE-2020-15967, acceso a la memoria liberada en el código para interactuar con Google Payments) está marcada como crítica, es decir. le permite omitir todos los niveles de protección del navegador y ejecutar código en el sistema fuera del entorno sandbox. Como parte del programa para pagar recompensas en efectivo por descubrir vulnerabilidades para la versión actual, Google pagó 27 premios por valor de 71500 dólares (un premio de 15000 dólares, tres premios de 7500 dólares, cinco premios de 5000 dólares, dos premios de 3000 dólares, un premio de 200 dólares y dos premios de 500 dólares). Aún no se ha determinado el tamaño de las 13 recompensas.

Tomado de Opennet.ru

Fuente: linux.org.ru

Añadir un comentario