La société Google a lancé la version 103 de son navigateur web Chrome. En parallèle, une version stable du projet open source Chromium, qui sert de base à Chrome, est également disponible. Le navigateur Chrome se distingue de Chromium par l'utilisation des logos de Google, la présence d'un système de notification en cas de crash, de modules pour la lecture de contenus vidéo protégés (DRM), d'un système de mise à jour automatique, de l'activation permanente de l'isolation Sandbox, de la fourniture de clés pour les API Google et de la transmission des paramètres RLZ lors de la recherche. Pour ceux qui ont besoin de plus de temps pour les mises à jour, une branche Extended Stable est maintenue, accompagnée de 8 semaines de support. La prochaine version de Chrome, la 104, est prévue pour le 2 août.
Principales modifications de Chrome 103 :
- Un éditeur d'images expérimental a été ajouté, permettant de modifier des captures d'écran de pages. L'éditeur propose des fonctionnalités telles que le recadrage, la sélection de zones, le dessin à la brosse, le choix des couleurs, l'ajout de textes et l'insertion de formes standard et de primitives, telles que des lignes, des rectangles, des cercles et des flèches. Pour activer l'éditeur, il est nécessaire d'activer les paramètres «chrome://flags/#sharing-desktop-screenshots» et «chrome://flags/#sharing-desktop-screenshots-edit». Après avoir créé une capture d'écran via le menu Partager dans la barre d'adresse, il est possible d'accéder à l'éditeur en cliquant sur le bouton «Modifier» sur la page de prévisualisation de la capture.

- Les fonctionnalités du mécanisme de pré-rendu (prerender) des contenus de recommandations dans la barre d'adresse Omnibox, introduit dans Chrome 101, ont été élargies. Le pré-rendu complète la capacité précédente de charger les recommandations les plus probables sans attendre le clic de l'utilisateur. En plus du chargement, le contenu des pages liées aux recommandations peut désormais être rendu dans le tampon (y compris l'exécution des scripts et la formation de l'arbre DOM), ce qui permet un affichage instantané des recommandations après un clic. Pour gérer le pré-rendu, des paramètres «chrome://flags/#enable-prerender2», «chrome://flags/#omnibox-trigger-for-prerender2» et «chrome://flags/#search-suggestion-for-prerender2» ont été proposés.
Dans Chrome 103 pour Android, une API Speculations Rules a été ajoutée, permettant aux auteurs de sites de transmettre des informations au navigateur sur les pages les plus probables que l'utilisateur pourrait visiter. Le navigateur utilise ces informations pour précharger et rendre le contenu des pages.
- La version Android introduit un nouveau gestionnaire de mots de passe, offrant la même interface unifiée de gestion des mots de passe utilisée pour les applications Android.
- La version Android a ajouté le support du service « Avec Google », permettant à l'utilisateur d'exprimer sa gratitude envers ses sites préférés en leur envoyant des autocollants numériques payants ou gratuits. Le service est actuellement disponible uniquement pour les utilisateurs aux États-Unis.

- Amélioration du remplissage automatique des champs avec les numéros de cartes de crédit et de débit, prenant désormais en charge les cartes enregistrées via Google Pay.
- Dans la version Windows, un client DNS intégré est activé par défaut, qui est également utilisé dans les versions pour macOS, Android et Chrome OS.
- L'API Local Font Access a été stabilisée et proposée à tous, permettant de déterminer et d'utiliser les polices installées sur le système, ainsi que de manipuler les polices à un niveau bas (par exemple, filtrer et transformer les glyphes).
- Ajout de la prise en charge du code de réponse HTTP 103, qui permet d'informer le client sur le contenu de certains en-têtes HTTP immédiatement après la demande, sans attendre que serveur toutes les opérations liées à la demande soient terminées et que le contenu commence à être restitué. De cette manière, il est possible de fournir des suggestions sur les éléments liés à la page restituée qui peuvent être préchargés (par exemple, des liens vers les fichiers css et javascript utilisés sur la page). En recevant des informations sur ces ressources, le navigateur peut commencer à les charger sans attendre la fin de la restitution de la page principale, ce qui permet de réduire le temps total de traitement de la demande.
- Dans le cadre des Origin Trials (fonctionnalités expérimentales nécessitant une activation distincte), des tests de l'API Federated Credential Management (FedCM) ont commencé uniquement sur les versions pour la plateforme Android. Cette API permet de créer des services d'identification intégrés qui garantissent la confidentialité et fonctionnent sans mécanismes de suivi intersites, tels que le traitement des cookies tiers. L'Origin Trial implique la possibilité d'utiliser cette API depuis des applications chargées à partir de localhost ou 127.0.0.1, ou après avoir enregistré et obtenu un jeton spécial, qui est valide pour une durée limitée pour un site web spécifique.
- Dans l'API Client Hints, développée comme substitution à l'en-tête User-Agent et permettant de renvoyer sélectivement des données sur des paramètres spécifiques du navigateur et du système (version, plateforme, etc.) uniquement sur demande. serveur, la possibilité d'insérer dans la liste des identificateurs de navigateur des noms fictifs a été ajoutée, à l'instar du mécanisme GREASE (Generate Random Extensions And Sustain Extensibility) utilisé dans TLS. Par exemple, en plus de '»Chrome»; v=»103″' et '»Chromium»; v=»103″', un identifiant aléatoire d'un navigateur inexistant '»(Not;Browser»; v=»12″' peut être ajouté à la liste. Cette substitution permettra d'identifier les problèmes de traitement des identificateurs de navigateurs inconnus, qui obligent les navigateurs alternatifs à se faire passer pour d'autres navigateurs populaires afin de contourner la vérification des listes de navigateurs autorisés.
- Les fichiers au format image AVIF ont été ajoutés à la liste des formats autorisés pour le partage via l'API iWeb Share.
- Ajout du support du format de compression «deflate-raw», permettant d'accéder au flux compressé brut sans en-têtes ni blocs de fin, ce qui peut être utilisé, par exemple, pour lire et écrire des fichiers zip.
- Pour les éléments des formulaires web, il est désormais possible d'utiliser l'attribut «rel», ce qui permet d'appliquer aux navigations via les formulaires web le paramètre «rel=noreferrer» pour désactiver l'envoi de l'en-tête Referer ou «rel=noopener» pour désactiver la propriété Window.opener et interdire l'accès au contexte d'où la navigation a été effectuée.
- La réalisation de l'événement popstate a été alignée sur le comportement de Firefox. L'événement popstate est maintenant généré immédiatement après le changement d'URL sans attendre l'événement load.
- Pour les pages ouvertes sans HTTPS et à partir de blocs iframe, l'accès aux API Gamepad et Battery Status est interdit.
- Dans l'objet SerialPort, une méthode forget() a été ajoutée pour renoncer aux autorisations précédemment obtenues de l'utilisateur pour l'accès au port série.
- Une propriété CSS overflow-clip-margin a été ajoutée avec un attribut visual-box, définissant à quel endroit commencer la découpe du contenu débordant de la zone (peut prendre les valeurs content-box, padding-box et border-box).
- Dans les blocs iframe avec l'attribut sandbox, l'appel à des protocoles externes et le lancement d'applications externes sont interdits. Pour annuler cette restriction, il convient d'utiliser les propriétés allow-popups, allow-top-navigation et allow-top-navigation-with-user-activation.
- Le support de l'élément a été interrompu, car il a perdu son utilité après la fin du support des plugins.
- Des améliorations ont été apportées aux outils pour les développeurs web. Par exemple, dans le panneau Styles, il est désormais possible de définir la couleur d'un pixel en dehors de la fenêtre du navigateur. L'aperçu des valeurs des paramètres dans le débogueur a été amélioré. Il est également possible de modifier l'ordre des panneaux dans l'interface Elements.
En plus des nouveautés et des corrections de bogues, la nouvelle version a corrigé 14 vulnérabilités. Beaucoup de ces vulnérabilités ont été identifiées grâce à des tests automatisés utilisant les outils AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer et AFL. L'un des problèmes (CVE-2022-2156) a été classé comme critique, ce qui implique la possibilité de contourner tous les niveaux de protection du navigateur et d'exécuter du code dans le système en dehors de l'environnement sandbox. Les détails de cette vulnérabilité ne sont pas encore divulgués, il est seulement connu qu'elle est causée par un accès à un bloc de mémoire libéré (use-after-free).
Dans le cadre du programme de récompense en espèces pour la découverte de vulnérabilités pour cette version, Google a distribué 9 primes d'un total de 44 000 dollars américains (une prime de 20 000 $, une prime de 7 500 $, une prime de 7 000 $, deux primes de 3 000 $ et une prime de 2 000 $, 1 000 $ et 500 $). Le montant de la récompense pour une vulnérabilité critique n'est pas encore déterminé.
Source : opennet.ru


