La société Google a publié la version du navigateur web Chrome 154. En même temps, une version stable du projet open source Chromium, qui est à la base de Chrome, est disponible. Le navigateur Chrome se distingue de Chromium par l'utilisation des logos de Google, la présence d'un système d'envoi de notifications en cas de crash, des modules pour la lecture de contenu vidéo protégé contre la copie (DRM), un système de mise à jour automatique, une activation constante de l'isolement Sandbox, la fourniture de clés pour les API Google et la transmission de paramètres RLZ lors de la recherche. Pour ceux qui ont besoin de plus de temps pour effectuer la mise à jour, une branche Extended Stable est maintenue, accompagnée de 8 semaines. La prochaine version de Chrome 155, dans le cadre d'un nouveau cycle de développement de deux semaines, est prévue pour le 6 octobre.
Modifications principales dans Chrome 154 (1, 2, 3, 4) :
- Le développement du mode AI a été poursuivi, permettant d'interagir avec un agent AI depuis la barre d'adresse ou depuis la page affichée lors de l'ouverture d'un nouvel onglet. Dans cette nouvelle version, les utilisateurs aux États-Unis ont la possibilité d'utiliser l'assistant AI Gemini pour essayer virtuellement des vêtements lors de leurs achats dans certains magasins en ligne. Dans Chrome pour iOS, le support de la communication vocale avec Gemini en temps réel a été mis en œuvre, par exemple, pour discuter du contenu d'une page web ouverte.
- Les interfaces et technologies développées dans le cadre de l'initiative Privacy Sandbox pour remplacer les cookies tiers ont été supprimées. Le but de la fourniture des données API a été perdu après la décision de ne pas cesser le support des cookies tiers dans Chrome. Les API suivantes ont été supprimées : Topics (qui a remplacé l'API FLoC), API Protected Audience, API Shared Storage, API Attribution Reporting, Private Aggregation, API Related Website Sets et requestStorageAccessFor.
- Dans la version pour la plateforme Android, le mode LNP (Local Network Protection) est activé, nécessitant une confirmation distincte pour accéder aux sous-réseaux intranet internes (192.168.x.x, 10.x.x.x, etc.). Ce mode permet de bloquer les attaques sur les ressources du réseau local et d'empêcher les scans du réseau dans le but d'identifier discrètement l'utilisateur et de recueillir des informations sur son environnement.
- Pour effectuer des requêtes via l'API Background Fetch, il est désormais nécessaire d'obtenir des autorisations LNA (Local Network Access) lors de l'envoi de données vers des serveurs sur un réseau local (192.168.0.0/16, 10.0.0.0/8, etc.) ou lors de l'accès à l'interface loopback (127.0.0.0/8). De plus, pour l'API Background Fetch, des contrôles CORS (Cross-Origin Resource Sharing) ont été appliqués afin d'uniformiser les restrictions imposées à l'API Background Fetch et à Fetch. Ces modifications empêchent l'utilisation de Background Fetch pour contourner les restrictions Cross-Origin et réaliser des attaques CSRF sur des routeurs, des points d'accès, des imprimantes, des interfaces web d'entreprise et d'autres dispositifs et services qui n'acceptent des requêtes que depuis le réseau local.
- Un mode d'optimisation optionnel «ServiceWorkerAutoPreload» a été ajouté, permettant d'envoyer une requête réseau en parallèle à l'initialisation du Service Worker.
- L'élément HTML et l'API JavaScript Web Install (méthode navigator.install()) ont été ajoutés, destinés à afficher une demande d'installation d'une application web par le site. L'installation se fait après confirmation explicite de l'opération par l'utilisateur. Cette fonctionnalité peut être utilisée lors de la création de catalogues de magasins d'applications web ou pour simplifier l'installation d'applications web pour fonctionner avec le site actuel.
- L'API Window Shape (méthode window.setShape) a été ajoutée, permettant aux applications web isolées de modifier la forme de la fenêtre, par exemple, de créer des fenêtres non rectangulaires, des panneaux flottants et des éléments superposés. L'API est pour l'instant disponible uniquement sur ChromeOS.
- Des paramètres ont été ajoutés pour gérer les types de contenu auxquels s'applique l'auto-complétion dans les formulaires web. Par exemple, il est possible de désactiver l'enregistrement et l'auto-complétion des données de contact et des informations de paiement. Il est également possible de configurer des modèles d'URL pour désactiver l'auto-complétion en lien avec des sites spécifiques.
- Par défaut, l'affichage d'une demande de confirmation lors de l'accès à des sites via HTTP est activé.
- Prise en charge de la sélection adaptative de la taille des blocs iframe, automatiquement ajustée en fonction du contenu afin d'éviter l'apparition de barres de défilement internes. Cette fonctionnalité est activée en spécifiant la propriété CSS «frame-sizing» (par exemple, «frame-sizing: content-height») dans la page parent et en ajoutant dans l'en-tête du contenu de l'iframe l'élément ''.
- Dans la propriété CSS scroll-marker-group, les modes « links » et « tabs » ont été implémentés pour gérer l'ordre de commutation du focus. En mode « links », le groupe de marqueurs (« ::scroll-marker-group ») fonctionne comme un menu de navigation traditionnel (les marqueurs de défilement sont traités comme des liens, parcourus par la touche Tab). En mode « tabs », le groupe de marqueurs fonctionne comme un ensemble d'onglets, la navigation entre eux se fait à l'aide des touches de contrôle du curseur. Deux paramètres « before » et « after » sont également disponibles, permettant de gérer le traitement du groupe de marqueurs par rapport au contenu (en spécifiant « before », les marqueurs seront traités en premier, tandis qu'avec « after », ce sera seulement après la navigation dans le contenu).
- La propriété CSS text-decoration-inset a été implémentée, permettant de configurer le début et la fin du dessin des décorateurs (soulignement, barré, etc.) par rapport aux bords du texte. Par exemple, pour réduire le décorateur de 10 pixels, vous pouvez spécifier « text-decoration-inset: 10px; », et pour l'allonger — « text-decoration-inset: -10px; ».
- Dans l'interface JavaScript Iterator, la méthode Iterator.prototype.includes a été ajoutée pour vérifier la présence d'un certain élément dans l'itérateur.
- Un mécanisme de Private Verification Tokens (PVT) a été mis en place en mode « Origin trials », permettant de distinguer les vrais utilisateurs des bots grâce à la transmission de jetons anonymes lors de l'ouverture de sites en mode navigation privée, évitant ainsi la nécessité de demander un captcha, une authentification obligatoire et un suivi via des Cookies. Les jetons reflètent le passage d'une authentification réussie ou d'un contrôle anti-bot (les contrôles déjà effectués sur un site sont utilisés pour se connecter à d'autres sites sans vérifications supplémentaires).
En plus des nouveautés et corrections de bugs, la nouvelle version corrige 108 vulnérabilités. 11 problèmes ont été classés comme critiques, impliquant que les vulnérabilités permettent de contourner tous les niveaux de sécurité du navigateur et d'exécuter du code sur le système au-delà de l'environnement sandbox. 4 des problèmes critiques sont causés par l'accès à de la mémoire déjà libérée (use-after-free) dans AdFilter, WindowDialog, ServiceWorker et l'API Fullscreen, tandis que 7 proviennent d'un débordement de tampon dans WebGL, ANGLE et le code pour travailler avec le GPU.
Source : opennet.ru
