Chrome Version 91

Google a dévoilé la sortie du navigateur Web Chrome 91. Parallèlement, une version stable du projet gratuit Chromium, qui sert de base à Chrome, est disponible. Le navigateur Chrome se distingue par l'utilisation des logos Google, la présence d'un système d'envoi de notifications en cas de crash, de modules de lecture de contenus vidéo protégés (DRM), d'un système d'installation automatique des mises à jour et de transmission des paramètres RLZ lors de la recherche. La prochaine version de Chrome 92 est prévue pour le 20 juillet.

Changements clés dans Chrome 91 :

  • Implémentation de la possibilité d'arrêter l'exécution de JavaScript dans un groupe d'onglets réduit. Chrome 85 a introduit la prise en charge de l'organisation des onglets en groupes pouvant être associés à une couleur et une étiquette spécifiques. Lorsque vous cliquez sur une étiquette de groupe, les onglets qui lui sont associés sont réduits et une étiquette reste à la place (cliquez à nouveau sur l'étiquette pour ouvrir le groupe). Dans la nouvelle version, afin de réduire la charge du processeur et d'économiser de l'énergie, l'activité dans les onglets réduits a été suspendue. Une exception est faite uniquement pour les onglets qui lisent du son, utilisent l'API Web Locks ou IndexedDB, se connectent à un périphérique USB ou capturent du contenu vidéo, sonore ou de fenêtre. Le changement sera déployé progressivement, en commençant par un petit pourcentage d’utilisateurs.
  • Prise en charge incluse d'une méthode d'accord de clé résistante à la force brute sur les ordinateurs quantiques. Les ordinateurs quantiques sont radicalement plus rapides pour résoudre le problème de la décomposition d’un nombre naturel en facteurs premiers, qui est à la base des algorithmes de chiffrement asymétriques modernes et ne peut être résolu efficacement sur les processeurs classiques. Pour une utilisation dans TLSv1.3, le plugin CECPQ2 (Combined Elliptic-Curve and Post-Quantum 2) est fourni, combinant le mécanisme classique d'échange de clés X25519 avec le schéma HRSS basé sur l'algorithme NTRU Prime, conçu pour les cryptosystèmes post-quantiques.
  • Le support des protocoles TLS 1.0 et TLS 1.1, rendus obsolètes par le comité IETF (Internet Engineering Task Force), a été complètement interrompu. La possibilité de renvoyer TLS 1.0/1.1 en modifiant la politique SSLVersionMin a été supprimée.
  • Les assemblys pour la plate-forme Linux incluent l'utilisation du mode « DNS over HTTPS » (DoH, DNS over HTTPS), qui était auparavant proposé aux utilisateurs de Windows, macOS, ChromeOS et Android. DNS-over-HTTPS sera automatiquement activé pour les utilisateurs dont les paramètres spécifient des fournisseurs DNS prenant en charge cette technologie (pour DNS-over-HTTPS, le même fournisseur est utilisé que pour DNS). Par exemple, si l'utilisateur a spécifié DNS 8.8.8.8 dans les paramètres système, le service DNS-over-HTTPS de Google (« https://dns.google.com/dns-query ») sera activé dans Chrome si le DNS est 1.1.1.1, puis le service DNS-over-HTTPS Cloudflare (« https://cloudflare-dns.com/dns-query »), etc.
  • Le port 10080, utilisé dans la sauvegarde Amanda et VMWare vCenter, a été ajouté à la liste des ports réseau interdits. Auparavant, les ports 69, 137, 161, 554, 1719, 1720, 1723, 5060, 5061 et 6566 étaient déjà bloqués. Pour les ports sur liste noire, l'envoi de requêtes HTTP, HTTPS et FTP est bloqué afin de se protéger contre l'attaque slipstreaming NAT. , qui permet, lors de l'ouverture d'une page Web spécialement préparée par l'attaquant dans le navigateur, d'établir une connexion réseau depuis le serveur de l'attaquant vers n'importe quel port UDP ou TCP du système de l'utilisateur, malgré l'utilisation de la plage d'adresses interne (192.168.xx, 10 .xxx).
  • Il est possible de configurer le lancement automatique d'applications web autonomes (PWA - Progressive Web Apps) lorsque l'utilisateur se connecte au système (Windows et macOS). L'exécution automatique est configurée sur la page chrome://apps. La fonctionnalité est actuellement testée sur un petit pourcentage d'utilisateurs, et pour le reste elle nécessite d'activer le paramètre « chrome://flags/#enable-desktop-pwas-run-on-os-login ».
  • Dans le cadre du travail visant à déplacer le navigateur vers une terminologie inclusive, le fichier "master_preferences" a été renommé "initial_preferences". Pour maintenir la compatibilité, la prise en charge de « master_preferences » restera dans le navigateur pendant un certain temps. Auparavant, le navigateur s'était déjà débarrassé de l'utilisation des mots « liste blanche », « liste noire » et « natif ».
  • Le mode de navigation sécurisée améliorée, qui active des contrôles supplémentaires pour se protéger contre le phishing, les activités malveillantes et autres menaces sur le Web, inclut la possibilité d'envoyer les fichiers téléchargés pour analyse du côté de Google. De plus, la navigation sécurisée améliorée implémente la comptabilisation des jetons liés à un compte Google lors de l'identification des tentatives de phishing, ainsi que l'envoi des valeurs d'en-tête Referrer aux serveurs Google pour vérifier le transfert à partir d'un site malveillant.
  • Dans l'édition pour la plateforme Android, la conception des éléments du formulaire Web a été améliorée, qui ont été optimisées pour une utilisation sur les écrans tactiles et les systèmes pour personnes handicapées (pour les systèmes de bureau, la conception a été refaite dans Chrome 83). Le but de la refonte était d'unifier la conception des éléments de formulaire et d'éliminer les incohérences de style - auparavant, certains éléments de formulaire étaient conçus conformément aux éléments de l'interface du système d'exploitation et d'autres selon les styles les plus populaires. Pour cette raison, différents éléments ont été adaptés différemment aux écrans tactiles et aux systèmes pour personnes handicapées.
    Chrome Version 91Chrome Version 91
  • Ajout d'un sondage d'opinion des utilisateurs qui s'affiche lors de l'ouverture des paramètres de Privacy Sandbox (chrome://settings/privacySandbox).
  • Lors de l'exécution de la version Android de Chrome sur des tablettes dotées de grands écrans, la demande concerne la version de bureau du site, et non l'édition pour appareils mobiles. Vous pouvez modifier le comportement à l'aide du paramètre « chrome://flags/#request-desktop-site-for-tablets ».
  • Le code de rendu des tableaux a été retravaillé, ce qui a permis de résoudre des problèmes d'incohérence de comportement lors de l'affichage des tableaux dans Chrome et dans Firefox/Safari.
  • Le traitement des certificats de serveur de l'autorité de certification espagnole Camerfirma a été interrompu en raison d'incidents récurrents depuis 2017 impliquant des violations dans la délivrance des certificats. La prise en charge des certificats clients est conservée ; le blocage s'applique uniquement aux certificats utilisés sur les sites HTTPS.
  • Nous continuons à mettre en œuvre la prise en charge de la segmentation du réseau pour nous protéger contre les méthodes de suivi des mouvements des utilisateurs entre les sites basées sur le stockage d'identifiants dans des zones non destinées au stockage permanent d'informations (« Supercookies »). Étant donné que les ressources mises en cache sont stockées dans un espace de noms commun, quel que soit le domaine d'origine, un site peut déterminer qu'un autre site charge des ressources en vérifiant si cette ressource se trouve dans le cache. La protection est basée sur l'utilisation de la segmentation du réseau (Network Partitioning), dont l'essence est d'ajouter aux caches partagés une liaison supplémentaire des enregistrements au domaine à partir duquel la page principale est ouverte, ce qui limite la couverture du cache pour les scripts de suivi de mouvement uniquement. vers le site actuel (un script issu d'une iframe ne pourra pas vérifier si la ressource a été téléchargée depuis un autre site).

    Le prix de la segmentation est une diminution de l'efficacité de la mise en cache, entraînant une légère augmentation du temps de chargement des pages (maximum de 1.32 %, mais pour 80 % des sites de 0.09 à 0.75 %). Pour tester le mode de segmentation, vous pouvez exécuter le navigateur avec l'option "—enable-features=PartitionConnectionsByNetworkIsolationKey, PartitionExpectCTStateByNetworkIsolationKey, PartitionHttpServerPropertiesByNetworkIsolationKey, PartitionNelAndReportingByNetworkIsolationKey, PartitionSSLSessionsByNetworkIsolationKey, SplitHostCacheB yNetworkIsolationKey".

  • Ajout d'un historique de versions de l'API REST externe (https://versionhistory.googleapis.com/v1/chrome), grâce auquel vous pouvez obtenir des informations sur les versions de Chrome par rapport aux plates-formes et aux branches, ainsi que l'historique des mises à jour du navigateur.
  • Dans les iframes chargées depuis des domaines autres que le domaine de la page de base, l'affichage des boîtes de dialogue JavaScript alert(), confirm() et prompt() est interdit, ce qui protégera les utilisateurs des tentatives d'un script tiers d'afficher des messages sous le sous prétexte que la notification a été affichée par le site principal.
  • L'API WebAssembly SIMD a été stabilisée et proposée par défaut pour l'utilisation d'instructions vectorielles SIMD dans les applications au format WebAssembly. Pour garantir l'indépendance de la plate-forme, il propose un nouveau type 128 bits pouvant représenter différents types de données compressées, ainsi que plusieurs opérations vectorielles de base pour le traitement des données compressées. SIMD vous permet d'augmenter la productivité en parallélisant le traitement des données et sera utile lors de la compilation de code natif dans WebAssembly.
  • Plusieurs nouvelles API ont été ajoutées au mode Origin Trials (fonctionnalités expérimentales nécessitant une activation séparée). Origin Trial implique la possibilité de travailler avec l'API spécifiée à partir d'applications téléchargées depuis localhost ou 127.0.0.1, ou après s'être enregistré et avoir reçu un jeton spécial valable pour une durée limitée pour un site spécifique.
    • WebTransport est un protocole et une API JavaScript qui l'accompagnent pour l'envoi et la réception de données entre le navigateur et le serveur. Le canal de communication est organisé au-dessus de HTTP/3 en utilisant le protocole QUIC comme transport, qui, à son tour, est un module complémentaire au protocole UDP qui prend en charge le multiplexage de plusieurs connexions et fournit des méthodes de cryptage équivalentes à TLS/SSL.

      WebTransport peut être utilisé à la place des mécanismes WebSockets et RTCDataChannel, offrant des fonctionnalités supplémentaires telles que la transmission multi-flux, les flux unidirectionnels, la livraison dans le désordre, les modes de livraison fiables et peu fiables. De plus, WebTransport peut être utilisé à la place du mécanisme Server Push, que Google a abandonné dans Chrome.

    • Une interface déclarative pour définir des liens vers des applications Web autonomes (PWA), activée à l'aide du paramètre capture_links dans le manifeste de l'application Web et permettant aux sites d'ouvrir automatiquement une nouvelle fenêtre PWA lorsqu'un lien d'application est cliqué ou de passer en mode fenêtre unique, similaire aux applications mobiles.
    • Ajout de l'API WebXR Plane Detection, qui fournit des informations sur les surfaces planaires dans un environnement 3D virtuel. L'API spécifiée permet d'éviter le traitement gourmand en ressources des données obtenues via l'appel MediaDevices.getUserMedia(), en utilisant des implémentations propriétaires d'algorithmes de vision par ordinateur. Rappelons que l'API WebXR vous permet d'unifier le travail avec différentes classes d'appareils de réalité virtuelle, des casques 3D fixes aux solutions basées sur des appareils mobiles.
  • La prise en charge du travail avec WebSockets sur HTTP/2 (RFC 8441) a été implémentée, qui n'est valable que pour les requêtes sécurisées vers WebSockets et en présence d'une connexion HTTP/2 déjà établie avec le serveur, qui a annoncé la prise en charge des « WebSockets sur Extension HTTP/2".
  • Les limites de précision des valeurs de minuterie produites par un appel à performance.now() sont cohérentes sur toutes les plates-formes prises en charge et tiennent compte de la possibilité d'isoler les gestionnaires dans des processus distincts. Par exemple, sur les systèmes de bureau, la précision lors du traitement dans des contextes non isolés a été réduite de 5 à 100 microsecondes.
  • Les versions de bureau incluent désormais la possibilité de lire des fichiers à partir du presse-papiers (l'écriture de fichiers dans le presse-papiers est toujours interdite). fonction asynchrone onPaste(e) { let file = e.clipboardData.files[0]; let contents = wait file.text(); }
  • CSS implémente la règle @counter-style, qui vous permet de définir votre propre style pour les compteurs et les étiquettes dans les listes numérotées.
  • Les pseudo-classes CSS « :host() » et « :host-context() » ont ajouté la possibilité de transmettre des valeurs uniques de sélecteurs composés ( ) en plus des listes de sélection ( ).
  • Ajout de l'interface GravitySensor pour déterminer les données volumétriques (trois axes de coordonnées) du capteur de gravité.
  • L'API File System Access offre la possibilité de définir des recommandations pour choisir un nom de fichier et un répertoire proposés dans la boîte de dialogue de création ou d'ouverture d'un fichier.
  • Les Iframes chargées à partir d'autres domaines sont autorisées à accéder à l'API WebOTP si l'utilisateur accorde les autorisations appropriées. WebOTP vous permet de lire les codes de vérification uniques envoyés par SMS.
  • Autorisé à partager l'accès aux informations d'identification pour les sites liés à l'aide du mécanisme DAL (Digital Asset Links), qui permet aux applications Android d'être associées aux sites pour simplifier la connexion.
  • Les techniciens de service autorisent l'utilisation de modules JavaScript. Lorsque vous spécifiez le type 'module' lors de l'appel du constructeur, les scripts spécifiés seront chargés sous forme de modules et disponibles pour importation dans le contexte du travailleur. La prise en charge des modules facilite le partage de code entre les pages Web et les techniciens de service.
  • JavaScript offre la possibilité de vérifier l'existence de champs privés dans un objet en utilisant la syntaxe "#foo in obj". classe A { test statique (obj) { console.log (#foo en obj); } #foo = 0; } A.test(nouveau A()); // vrai A.test({}); // FAUX
  • JavaScript permet par défaut l'utilisation du mot-clé wait dans les modules au niveau supérieur, ce qui permet aux appels asynchrones d'être intégrés plus facilement dans le processus de chargement des modules et évite de les envelopper dans une « fonction asynchrone ». Par exemple, au lieu de (async function() { wait Promise.resolve(console.log('test')); }()); vous pouvez maintenant écrire wait Promise.resolve(console.log('test'));
  • Le moteur JavaScript V8 a amélioré l'efficacité de la mise en cache des modèles, ce qui a augmenté la vitesse de réussite du test Speedometer4.5-FlightJS de 2 %.
  • Une grande partie des améliorations ont été apportées aux outils destinés aux développeurs Web. Un nouveau mode inspecteur de mémoire a été ajouté, fournissant des outils pour examiner les données ArrayBuffer et la mémoire Wasm.
    Chrome Version 91

    Un indicateur de performance récapitulatif a été ajouté au panneau Performance, vous permettant de juger si un site nécessite ou non une optimisation.

    Chrome Version 91

    Les aperçus d'image dans les panneaux Éléments et Analyse de réseau fournissent des informations sur les proportions de l'image, les options de rendu et la taille du fichier.

    Chrome Version 91

    Dans le panneau d'inspection du réseau, il est désormais possible de modifier les valeurs acceptées de l'en-tête Content-Encoding.

    Chrome Version 91

    Dans le panneau de style, vous pouvez désormais visualiser rapidement la valeur calculée lors de la navigation dans les paramètres CSS en sélectionnant « Afficher la valeur calculée » dans le menu contextuel.

    Chrome Version 91

En plus des innovations et des corrections de bugs, la nouvelle version élimine 32 vulnérabilités. De nombreuses vulnérabilités ont été identifiées à la suite de tests automatisés utilisant les outils AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer et AFL. Aucun problème critique n'a été identifié qui permettrait de contourner tous les niveaux de protection du navigateur et d'exécuter du code sur le système en dehors de l'environnement sandbox. Dans le cadre du programme de récompense en espèces pour la découverte de vulnérabilités dans la version actuelle, Google a versé 21 récompenses d'une valeur de 92000 20000 $ (une récompense de 15000 7500 $, une de 5000 3000 $, quatre récompenses de 1000 500 $, trois récompenses de 5 XNUMX $, trois récompenses de XNUMX XNUMX $, deux récompenses de XNUMX XNUMX $ et deux récompenses). XNUMX $). Le montant des XNUMX récompenses n’a pas encore été déterminé.

Source: opennet.ru

Ajouter un commentaire