Chrome Versión 94

Google ha presentado el lanzamiento del navegador web Chrome 94. Al mismo tiempo, está disponible una versión estable del proyecto gratuito Chromium, que sirve como base para Chrome. El navegador Chrome se distingue por el uso de los logotipos de Google, la presencia de un sistema para enviar notificaciones en caso de falla, módulos para reproducir contenido de video protegido (DRM), un sistema para instalar actualizaciones automáticamente y transmitir parámetros RLZ durante la búsqueda. El próximo lanzamiento de Chrome 95 está previsto para el 19 de octubre.

A partir del lanzamiento de Chrome 94, el desarrollo pasó a un nuevo ciclo de lanzamiento. Los nuevos lanzamientos importantes ahora se publicarán cada 4 semanas, en lugar de cada 6 semanas, lo que permitirá una entrega más rápida de nuevas funciones a los usuarios. Cabe señalar que la optimización del proceso de preparación de lanzamientos y la mejora del sistema de prueba permiten generar lanzamientos con mayor frecuencia sin comprometer la calidad. Para las empresas y aquellos que necesitan más tiempo para actualizar, se lanzará una edición estable extendida por separado cada 8 semanas, lo que les permitirá cambiar a nuevas versiones de funciones no una vez cada 4 semanas, sino una vez cada 8 semanas.

Cambios clave en Chrome 94:

  • Se agregó el modo HTTPS-First, que recuerda al modo HTTPS Only que apareció anteriormente en Firefox. Si el modo está activado en la configuración, al intentar abrir un recurso sin cifrado a través de HTTP, el navegador primero intentará acceder al sitio a través de HTTPS y, si el intento no tiene éxito, se mostrará al usuario una advertencia sobre la falta de Soporte HTTPS y se le solicitó abrir el sitio sin cifrado. En el futuro, Google está considerando habilitar HTTPS-First de forma predeterminada para todos los usuarios, limitar el acceso a algunas funciones de la plataforma web para páginas abiertas a través de HTTP y agregar advertencias adicionales para informar a los usuarios sobre los riesgos que surgen al acceder a sitios sin cifrado. El modo se habilita en la sección de configuración “Privacidad y Seguridad” > “Seguridad” > “Avanzada”.
    Chrome Versión 94
  • Para páginas abiertas sin HTTPS, envío de solicitudes (descarga de recursos) a URL locales (por ejemplo, “http://router.local” y localhost) y rangos de direcciones internas (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0) está prohibido .8/1.2.3.4, etc.). Se hace una excepción solo para las páginas descargadas de servidores con IP internas. Por ejemplo, una página cargada desde el servidor 192.168.0.1 no podrá acceder a un recurso ubicado en IP 127.0.0.1 o IP 192.168.1.1, pero cargada desde el servidor XNUMX sí podrá. El cambio introduce una capa adicional de protección contra la explotación de vulnerabilidades en los controladores que aceptan solicitudes en IP locales y también protegerá contra ataques de revinculación de DNS.
  • Se agregó la función "Sharing Hub", que le permite compartir rápidamente un enlace a la página actual con otros usuarios. Es posible generar un código QR a partir de una URL, guardar una página, enviar un enlace a otro dispositivo vinculado a una cuenta de usuario y transferir un enlace a sitios de terceros como Facebook, WhatsUp, Twitter y VK. Esta función aún no está disponible para todos los usuarios. Para forzar el botón "Compartir" en el menú y la barra de direcciones, puede usar las configuraciones "chrome://flags/#sharing-hub-desktop-app-menu" y "chrome://flags/#sharing-hub- omnibox de escritorio”.
    Chrome Versión 94
  • La interfaz de configuración del navegador ha sido reestructurada. Cada sección de configuración ahora se muestra en una página separada, en lugar de en una página común.
    Chrome Versión 94
  • Se ha implementado soporte para la actualización dinámica del registro de certificados emitidos y revocados (Certificate Transparency), que ahora se actualizará sin referencia a las actualizaciones del navegador.
  • Se agregó una página de servicio "chrome://whats-new" con una descripción general de los cambios visibles para el usuario en la nueva versión. La página aparece automáticamente inmediatamente después de la actualización o se puede acceder a ella a través del botón Novedades en el menú Ayuda. Actualmente, la página menciona la búsqueda de pestañas, la capacidad de dividir perfiles y una función de cambio de color de fondo, que no son específicas de Chrome 94 y se introdujeron en versiones anteriores. Mostrar la página aún no está habilitado para todos los usuarios: para controlar la activación, puede usar las configuraciones “chrome://flags#chrome-whats-new-ui” y “chrome://flags#chrome-whats-new-in -menú-principal-nueva-insignia".
    Chrome Versión 94
  • Llamar a la API WebSQL desde contenido cargado desde sitios de terceros (como un iframe) ha quedado obsoleto. En Chrome 94, al intentar acceder a WebSQL desde scripts de terceros, se muestra una advertencia, pero a partir de Chrome 97, dichas llamadas se bloquearán. En el futuro, planeamos eliminar por completo el soporte para WebSQL, independientemente del contexto de uso. El motor WebSQL se basa en código SQLite y los atacantes podrían utilizarlo para explotar vulnerabilidades en SQLite.
  • Por razones de seguridad y para evitar actividades maliciosas, se ha comenzado a bloquear el uso del protocolo heredado MK (URL:MK), que alguna vez se usó en Internet Explorer y que permitía a las aplicaciones web extraer información de archivos comprimidos.
  • Se ha suspendido la compatibilidad con la sincronización con versiones anteriores de Chrome (Chrome 48 y anteriores).
  • El encabezado HTTP Política de permisos, diseñado para habilitar ciertas capacidades y controlar el acceso a la API, ha agregado soporte para el indicador "display-capture", que le permite controlar el uso de la API de captura de pantalla en la página (de forma predeterminada, la capacidad de capturar contenido de la pantalla desde iframes externos está bloqueada).
  • 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.
    • Se agregó la API WebGPU, que reemplaza la API WebGL y proporciona herramientas para realizar operaciones de GPU como renderizado e informática. Conceptualmente, WebGPU está cerca de las API Vulkan, Metal y Direct3D 12. Conceptualmente, WebGPU se diferencia de WebGL de la misma manera que la API de gráficos Vulkan se diferencia de OpenGL, pero no se basa en una API de gráficos específica, sino que es universal. capa que utiliza las mismas primitivas de bajo nivel, que están disponibles en Vulkan, Metal y Direct3D 12.

      WebGPU proporciona aplicaciones JavaScript con control de bajo nivel sobre la organización, procesamiento y transmisión de comandos a la GPU, así como la capacidad de administrar recursos asociados, memoria, buffers, objetos de textura y sombreadores de gráficos compilados. Este enfoque le permite lograr un mayor rendimiento para las aplicaciones gráficas al reducir los costos generales y aumentar la eficiencia del trabajo con la GPU. La API también permite crear proyectos 3D complejos para la Web que funcionan tan bien como programas independientes, pero no están vinculados a plataformas específicas.

    • Las aplicaciones PWA independientes ahora tienen la capacidad de registrarse como controladores de URL. Por ejemplo, la aplicación music.example.com puede registrarse como controlador de URL https://*.music.example.com y todas las transiciones desde aplicaciones externas que utilicen estos enlaces, por ejemplo, desde mensajería instantánea y clientes de correo electrónico, conducirán a la apertura de esta aplicación PWA, no a una nueva pestaña del navegador.
    • Se ha implementado compatibilidad con el nuevo código de respuesta HTTP: 103, que se puede utilizar para mostrar encabezados con antelación. El código 103 le permite informar al cliente sobre el contenido de ciertos encabezados HTTP inmediatamente después de la solicitud, sin esperar a que el servidor complete todas las operaciones relacionadas con la solicitud y comience a servir el contenido. De manera similar, puede proporcionar sugerencias sobre elementos relacionados con la página que se sirve que se pueden precargar (por ejemplo, se pueden proporcionar enlaces al CSS y JavaScript utilizados en la página). Una vez recibida información sobre dichos recursos, el navegador comenzará a descargarlos sin esperar a que termine de mostrarse la página principal, lo que le permite reducir el tiempo total de procesamiento de solicitudes.
  • Se agregó la API WebCodecs para la manipulación de bajo nivel de transmisiones de medios, complementando las API de alto nivel HTMLMediaElement, Media Source Extensions, WebAudio, MediaRecorder y WebRTC. La nueva API puede tener demanda en áreas como transmisión de juegos, efectos del lado del cliente, transcodificación de transmisiones y soporte para contenedores multimedia no estándar. En lugar de implementar códecs individuales en JavaScript o WebAssembly, la API WebCodecs proporciona acceso a componentes prediseñados de alto rendimiento integrados en el navegador. En particular, la API WebCodecs proporciona decodificadores y codificadores de audio y video, decodificadores de imágenes y funciones para trabajar con cuadros de video individuales a bajo nivel.
  • La API Insertable Streams se ha estabilizado, lo que permite manipular transmisiones de medios sin procesar transmitidas a través de la API MediaStreamTrack, como datos de cámara y micrófono, resultados de capturas de pantalla o datos de decodificación de códecs intermedios. Las interfaces WebCodec se utilizan para presentar marcos sin formato y se genera una secuencia similar a la que genera la API WebRTC Insertable Streams basada en RTCPeerConnections. Desde el punto de vista práctico, la nueva API permite funcionalidades como aplicar técnicas de aprendizaje automático para identificar o anotar objetos en tiempo real, o agregar efectos como recorte de fondo antes de codificar o después de decodificar mediante un códec.
  • El método Scheduler.postTask() se ha estabilizado, lo que le permite controlar la programación de tareas (llamadas de devolución de llamada de JavaScript) con diferentes niveles de prioridad. Se proporcionan tres niveles de prioridad: 1- ejecución primero, incluso si las operaciones del usuario pueden estar bloqueadas; 2: se permiten cambios visibles para el usuario; 3 - ejecución en segundo plano). Puede utilizar el objeto TaskController para cambiar la prioridad y cancelar tareas.
  • Estabilizado y ahora distribuido fuera de la detección de inactividad de la API de Origin Trials para detectar la inactividad del usuario. La API le permite detectar momentos en los que el usuario no está interactuando con el teclado o el mouse, el protector de pantalla se está ejecutando, la pantalla está bloqueada o se está trabajando en otro monitor. La información a la aplicación sobre la inactividad se realiza enviando una notificación después de alcanzar un umbral de inactividad específico.
  • Se ha formalizado el proceso de gestión del color en los objetos CanvasRenderingContext2D e ImageData y el uso del espacio de color sRGB en ellos. Proporciona la capacidad de crear objetos CanvasRenderingContext2D e ImageData en espacios de color distintos de sRGB, como Display P3, para aprovechar las capacidades avanzadas de los monitores modernos.
  • Se agregaron métodos y propiedades a la API VirtualKeyboard para controlar si el teclado virtual se muestra u oculta y para obtener información sobre el tamaño del teclado virtual mostrado.
  • JavaScript permite que las clases utilicen bloques de inicialización estáticos para agrupar el código que se ejecuta una vez al procesar la clase: clase C { // El bloque se ejecutará al procesar la clase misma static { console.log("bloque estático de C"); } }
  • Las propiedades flex-basis y flex CSS implementan las palabras clave content, min-content, max-content y fit-content para proporcionar un control más flexible sobre el tamaño del área principal de Flexbox.
  • Se agregó la propiedad CSS de barra de desplazamiento-canalón para controlar cómo se reserva el espacio de la pantalla para la barra de desplazamiento. Por ejemplo, cuando no desea que el contenido se desplace, puede expandir la salida para ocupar el área de la barra de desplazamiento.
  • La API de autoperfilado se agregó con la implementación de un sistema de creación de perfiles que le permite medir el tiempo de ejecución de JavaScript en el lado del usuario para depurar problemas de rendimiento en el código JavaScript, sin recurrir a manipulaciones manuales en la interfaz para desarrolladores web.
  • Después de eliminar el complemento Flash, se decidió devolver valores vacíos en las propiedades navigator.plugins y navigator.mimeTypes, pero resultó que algunas aplicaciones los usaron para verificar la presencia de complementos para mostrar archivos PDF. Dado que Chrome tiene un visor de PDF incorporado, las propiedades navigator.plugins y navigator.mimeTypes ahora devolverán una lista fija de complementos de visor de PDF estándar y tipos MIME: "PDF Viewer, Chrome PDF Viewer, Chromium PDF Viewer, Microsoft Edge PDF Viewer y PDF integrado de WebKit".
  • Se han realizado mejoras en las herramientas para desarrolladores web. Los dispositivos Nest Hub y Nest Hub Max se agregaron a la lista de simulación de pantalla. Se agregó un botón para invertir filtros a la interfaz para inspeccionar la actividad de la red (por ejemplo, al instalar el filtro "código de estado: 404", puede ver rápidamente todas las demás solicitudes) y también brindó la capacidad de ver los valores originales. ​​de los encabezados Set-Cookie (le permite evaluar la presencia de valores incorrectos que se eliminan al normalizar). La barra lateral de la consola web ha quedado obsoleta y se eliminará en una versión futura. Se agregó la capacidad experimental para ocultar problemas en la pestaña Problemas. En la configuración, se ha agregado la capacidad de seleccionar el idioma de la interfaz.
    Chrome Versión 94

Además de las innovaciones y correcciones de errores, la nueva versión elimina 19 vulnerabilidades. Muchas de las vulnerabilidades se identificaron como resultado de pruebas automatizadas utilizando las herramientas AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer y AFL. No se han identificado problemas críticos que permitan eludir 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ó 17 premios por valor de 56500 dólares (un premio de 15000 dólares, dos premios de 10000 dólares, un premio de 7500 dólares, cuatro premios de 3000 dólares, dos premios de 1000 dólares). Aún no se ha determinado el tamaño de las 7 recompensas.

Fuente: opennet.ru

Añadir un comentario