La empresa Google ha lanzado una versión del navegador web Chrome 137. Al mismo tiempo, está disponible una versión estable del proyecto de código abierto Chromium, que es la base de Chrome. El navegador Chrome se diferencia de Chromium en el uso de logotipos de Google, la inclusión de un sistema de notificación en caso de fallos, módulos para la reproducción de contenido de video protegido (DRM), un sistema de actualizaciones automáticas, la inclusión constante de aislamiento de Sandbox, el suministro de claves para Google API y la transmisión de parámetros RLZ durante la búsqueda. Para aquellos que necesiten más tiempo para actualizar, se mantiene una rama de Extended Stable, que se acompaña durante 8 semanas. La siguiente versión de Chrome 138 está programada para el 24 de junio.
Principales cambios en Chrome 137:
- Se ha integrado un chatbot Gemini en las versiones para Windows y macOS, que puede explicar el contenido de la página que se esté viendo y responder preguntas relacionadas sin cambiar de pestaña. Se admite la interacción de texto y voz con Gemini. Por el momento, el uso del chatbot está disponible solo para algunos usuarios en EE.UU. que tienen suscripciones a Google AI Pro y Ultra.
- Siguiendo el enfoque de segmentación de almacenamiento implementado anteriormente, se ha asegurado el aislamiento del procesamiento de la URL del esquema «blob:», destinado al acceso a datos generados localmente a través de la API Blob o File. En la segmentación, se adjunta un indicador separado a la clave utilizada para extraer objetos, que define la vinculación a la fuente el dominio, desde la cual se abrió la página principal, lo que permite bloquear métodos que rastrean el movimiento del usuario entre sitios a través de la manipulación de la URL «blob:».
- En el modo de protección avanzada del navegador (Safe Browsing > Enhanced protection), se ha activado la capacidad de utilizar un modelo de lenguaje grande para identificar páginas fraudulentas por su contenido. El modelo de IA se ejecuta del lado del cliente, pero en caso de sospecha de contenido dudoso, se lleva a cabo una verificación adicional en como en entornos de nube públicos o privados. Google. En la versión actual, solo se recopila información sobre las páginas problemáticas. En la próxima versión se planea comenzar a mostrar advertencias al usuario.
- Se ha habilitado la protección contra la identificación oculta de usuarios mediante la caché HSTS (HTTP Strict Transport Security). HSTS permite a los sitios redirigir a los usuarios a HTTPS al acceder a través de HTTP. Durante su funcionamiento, el nombre de host configurado a través de HSTS se almacena en la caché interna, lo que permite utilizar la presencia o ausencia del host en la caché para almacenar un solo bit de información. Para el almacenamiento oculto de un identificador de usuario de 32 bits, se puede utilizar un array de 32 imágenes servidas desde diferentes hosts a través de HTTP (http://bit0.example.com/image.jpg, http://bit1.example.com/image.jpg, etc.). La identificación del usuario se realiza al verificar desde qué hosts cargaron las imágenes a través de HTTPS y cuáles a través de HTTP (si las imágenes fueron entregadas anteriormente por HTTP y redirigidas a HTTPS a través de HSTS, entonces en solicitudes posteriores se cargarán inmediatamente desde HTTPS, omitiendo la solicitud por HTTP). La protección se reduce a permitir la actualización de HSTS solo para recursos de nivel superior y bloquear la actualización de HSTS en solicitudes de subrecursos.
- Para conexiones WebRTC se ha implementado el soporte del protocolo DTLS 1.3 (Datagram Transport Layer Security, análogo a TLS para UDP). El soporte de DTLS 1.3 es necesario para utilizar algoritmos de cifrado post-cuántico en WebRTC.
- Se ha eliminado la opción de línea de comandos «—load-extension», que permitía cargar extensiones. La opción se ha eliminado para reducir el riesgo de su uso para inyectar extensiones maliciosas. Para forzar la carga de extensiones descomprimidas, se recomienda usar el botón Load Unpacked en la página de gestión de extensiones (chrome://extensions/) después de habilitar el modo desarrollador. En Chromium y versiones de prueba de Chrome For Testing se ha mantenido el soporte de la opción «—load-extension».
- Se ha decidido dejar de lado la reversión automática al uso del sistema de renderizado por software SwiftShader para WebGL, que implementa la API Vulkan. En caso de que no haya un backend adecuado basado en GPU, la creación de un contexto WebGL ahora devolverá un error en lugar de cambiar a SwiftShader. La interrupción del uso de SwiftShader permitirá aumentar la seguridad al eliminar la ejecución de código generado por el compilador JIT en el proceso responsable de la interacción con la GPU. Se ha previsto una opción de línea de comando separada «—enable-unsafe-swiftshader» para reactivar el uso de SwiftShader. En la versión 137 de Chrome, para los usuarios de plataformas Linux y macOS, se mostrará una advertencia en la consola web al usar SwiftShader, y en Chrome 138 se desactivará la reversión a SwiftShader. Para los usuarios de Windows, el sistema SwiftShader ha sido reemplazado por el sistema de renderizado por software WARP (Windows Advanced Rasterization Platform) integrado en Windows.
- Se ha añadido a la configuración la opción de activar la función «Autofill with AI», que simplifica el llenado de formularios web. Cuando está activado, el navegador utiliza un modelo de IA para entender el formulario web y completar automáticamente los campos, basándose en cómo el usuario ha completado formularios similares anteriormente.
- se ha añadido al API de Web Cryptography soporte para algoritmos criptográficos basados en la curva elíptica Curve25519, como el algoritmo de firmación de firmas digitales Ed25519.
- Se ha implementado la propiedad CSS «reading-flow», que permite gestionar el orden de procesamiento de elementos en contenedores flexibles, de cuadrícula y de bloque durante el uso de lectores de pantalla y navegación secuencial. También se ha añadido la propiedad «reading-order», que permite redefinir manualmente el orden de los elementos.
- En CSS se ha propuesto la función «if()», destinada a seleccionar valores en función del resultado de las expresiones condicionales. Como argumento, se pasa una lista de pares «condición:valor» separada por punto y coma. La función recorre estos pares y se detiene en la primera condición que se cumple. Por ejemplo: «background-color: if(style(—color: white): black; else: white);».
- En la propiedad CSS offset-path se ha implementado la función shape() para crear figuras mediante comandos equivalentes a la función path(), pero que permiten utilizar la sintaxis estándar de CSS.
- Se ha añadido la API JSPI (JavaScript Promise Integration), que proporciona la integración de aplicaciones WebAssembly con el objeto Promise de JavaScript y permite que los programas WebAssembly actúen como generadores de Promise e interactúen con APIs basadas en Promise.
- En la API CanvasRenderingContext2D, OffscreenCanvasRenderingContext2D e ImageData se ha añadido soporte para los formatos de píxeles que utilizan valores de punto flotante para representar los componentes de color.
- En el modo de pruebas de origen se han propuesto APIs experimentales Rewriter y Writer, que permiten reescribir (por ejemplo, resumir o cambiar el estilo de narrativa) o generar texto utilizando modelos de lenguaje grandes.
- Se ha añadido la posibilidad de vinculación a espacios de trabajo a las herramientas para desarrolladores web, lo que permite guardar en archivos locales los cambios realizados en JavaScript, HTML y CSS mientras se trabaja con las herramientas integradas en el navegador. Se han ampliado las capacidades del asistente de IA, que puede modificar CSS y analizar el rendimiento.
Además de las nuevas funciones y correcciones de errores, en la nueva versión se han eliminado 1 vulnerabilidad. Muchas de las vulnerabilidades se identificaron a través de pruebas automatizadas utilizando herramientas como AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer y AFL. No se han identificado problemas críticos que permitan evadir todos los niveles de protección del navegador y ejecutar código fuera del entorno sandbox. En el marco del programa de recompensas por la detección de vulnerabilidades para esta versión, Google ha pagado 8 recompensas por un total de 7500 dólares (una recompensa de $4000, $2000, $1000 y $500). El monto de las cuatro recompensas aún no ha sido determinado.
Fuente: opennet.ru
