Les utilisateurs prévenus lorsque leurs identifiants et mots de passe enregistrés sont compromis
À partir de cette version, Firefox (desktop) peut avertir l’utilisateur lorsque l’un de ses identifiants de connexion est trouvé dans la base de données qui collecte des identifiants volés provenant de comptes piratés. Cette vérification se fera par le biais du site Web partenaire « ;Have I Been Pwned? ;» spécialisé dans les cas de violations de données. Dans le cadre de cette initiative, Firefox va analyser les identifiants de connexion et les mots de passe enregistrés et verra s’ils ont fait l’objet d’une violation de données répertoriée sur HIBP. S’il en trouve une, le navigateur alertera l’utilisateur et l’invitera à changer son mot de passe.
Il faut garder à l’esprit que cette nouvelle fonctionnalité permettra uniquement de détecter des mots de passe compromis associés à des violations de données antérieures répertoriées. Lorsque Firefox détectera qu’un compte enregistré a fait l’objet d’une violation, il ajoutera une icône d’alerte à côté du profil du compte dans Firefox Lockwise puis affichera une notification « ;les mots de passe ont été divulgués ou volés ;».
Un nouvel interpréteur JavaScript plus rapide
Mozilla a développé et ajouté à un nouvel interpréteur de bytecode JavaScript à son moteur de rendu JavaScript intégré dans cette version. Mozilla annonce donc une gestion plus performante du code JavaScript avec l’aide de son nouvel interpréteur de code ajouté à son moteur JavaScript.
Pour atteindre cet objectif, Mozilla explique que dans les moteurs JavaScript modernes, chaque fonction est initialement exécutée dans un interpréteur de code. Les fonctions qui sont beaucoup appelées sont compilées en code machine natif. Cela s’appelle la compilation JIT ou compilation à la volée. Pour ce qui concerne Firefox, il intègre également un interpréteur de code JavaScript écrit en C++ et plusieurs niveaux de compilation JIT. Dans un premier temps, nous avons d’abord un compilateur JIT de base qui compile chaque instruction bytecode directement en un petit morceau de code machine en utilisant la mise en cache inline à la fois pour des besoins de performance et de collecte des informations de type pour le compilateur JIT nommé IonMonkey ou Ion. À son tour, le compilateur IonMonkey utilise des optimisations avancées pour générer un code rapide pour les options critiques. Il faut préciser que lorsqu’une fonction déjà en cours de compilation est appelée avec un nouveau type d’arguments, le code de la fonction peut être « ;désoptimisé ;» et abandonné. Dans pareil cas, l’exécution se poursuit dans le code de base jusqu’à la prochaine compilation Ion.
Bien que ce processus d’interprétation du code JavaScript a fonctionné assez bien jusque-là, l’équipe de Firefox explique qu’elle a rencontré quelques problèmes avec la première partie du pipeline composée de l’interpréteur C++ et du compilateur JIT de base. En effet, certaines applications web modernes comme Google Docs ou encore Gmail exécutent tellement de code JavaScript que le compilateur de base et même le compilateur JIT pourraient passer beaucoup de temps en cherchant à compiler des milliers de fonctions. Par ailleurs, l’interpréteur C ++ s’est avéré très lent et ne collecte pas d’informations de type, ce qui retarde la compilation de base. Une solution aurait été de le déplacer hors du thread, mais cela aurait constitué un risque de performance. Pour résoudre ces problèmes, Firefox a ajouté au pipeline une nouvelle étape appelée interpréteur de base.
L’interpréteur de base se situe entre l’interpréteur C++ et le compilateur JIT de base et contient des éléments des deux niveaux. Il exécute toutes les instructions bytecode avec une boucle d’interpréteur fixe (comme l’interpréteur C++), et utilise les techniques de mise en cache inline pour améliorer les performances et collecter des informations de type (comme le JIT de base le fait). Générer un interprète n’est pas une nouvelle idée. Mais l’équipe de Firefox souligne ici qu’elle a trouvé un nouveau moyen de le faire en réutilisant la plus grande partie du code du compilateur JIT de base. Le compilateur JIT de base est un modèle de JIT, ce qui signifie que chaque instruction de code intermédiaire est compilée en une séquence d’instructions-machine essentiellement fixes qui sont ensuite suggérées dans une boucle d’interprétation.
L'usage de bits associé à un agent de mise à jour dédié
BITS est un composant du système d'exploitation Windows qui permet le transfert de fichiers asynchrones utilisant la bande passante lorsqu’elle est inoccupée. Il est utilisé par les services de mises à jour logicielles de Microsoft, notamment Windows Update, WSUS (Windows Server Update Services), et SMS (Systems Management Server). Il est également employé par les services de mises à jour des logiciels de messagerie instantanée de Microsoft et des logiciels non Microsoft.
L’usage de bits associé à un agent de mise à jour devrait permettre aux utilisateurs disposant d’une connexion lente de se procurer plus facilement les dernières mises à jour du navigateur de Mozilla. Notons que les mises à jour de Firefox depuis la version 68 ne peuvent être téléchargées que lorsque quelqu’un exécute Firefox. En introduisant un agent de mise à jour dédié, il est possible de télécharger ces mises à jour véritablement en arrière-plan sans affecter l’expérience utilisateur et les performances du navigateur.
Matt Howell, Platform Engineer chez Mozilla, avait confié à ce propos : « l’agent de mise à jour est en cours de planification en tant que processus d’arrière-plan qui restera actif une fois le navigateur fermé pour télécharger et appliquer les mises à jour. Cela devrait rendre la mise à jour plus pratique pour tout le monde et réduire le temps nécessaire pour obtenir de nouvelles mises à jour pour les utilisateurs qui ne sont pas bien pris en charge par le processus de mise à jour actuel, car ils ne se servent pas beaucoup Firefox et/ou ont des connexions Internet lentes ».
Kirk Steuber, également Platform Engineer chez Mozilla, s’est plus étendu sur le sujet en expliquant : « nous allons d’abord permettre à Firefox de se mettre à jour à l’aide de bits sans l’agent de mise à jour. Cela nous permettra de passer plus facilement d’un mécanisme de téléchargement à l’autre plutôt que de le supprimer en une seule fois. Pour le moment, Firefox va invoquer bits via une interface intégrée au binaire qui communique directement avec bits ».
Cette interface a été modifiée dans Firefox 70 afin qu’elle communique désormais avec bits en utilisant l’agent de mise à jour en tant qu’intermédiaire. Cela permet à cette interface de gérer les taches de bits en tant qu’utilisateur du service local. Les testeurs qui disposaient de la dernière version de Firefox Nightly ont pu voir la fonctionnalité en action. Elle peut être activée en sélectionnant app.update.BITSenabled. et app.update.BITS.inTrialgroup. au niveau des réglages.
Autres nouveautés
La protection de suivi améliorée (ETP) est activée par défaut sur toutes les plateformes, offrant ainsi une protection de la confidentialité à tous les utilisateurs. Avec cette version, vous pouvez maintenant voir les nombreuses façons dont ETP vous protège dans un rapport de protection de la vie privée.
Le rapport Firefox Privacy Protections inclut:
- La possibilité de voir le nombre de fois où Enhanced Tracking Protection a bloqué toute tentative de marquage avec des cookies. L'un des nombreux moyens inédits que Firefox conserve pour vous protéger est de bloquer les cookies de suivi tiers. Cela fait partie de sa protection améliorée de suivi que l'organisation a lancée par défaut en septembre. Cela empêche les traceurs tiers de créer un profil basé sur votre activité en ligne. À présent, vous verrez le nombre d'empreintes numériques que le logiciel a bloqué pour vous.
- La possibilité de rester à jour sur les violations de données avec Firefox Monitor. Les violations de données ne sont pas rares, il est donc plus important que jamais de rester à jour pour ce qui concerne vos comptes de messagerie et de vos mots de passe. À présent, vous pouvez afficher en un coup d’œil un récapitulatif du nombre de mots de passe dangereux pouvant avoir été utilisés lors d’une violation, afin de pouvoir prendre des mesures pour mettre à jour et modifier ces mots de passe.
- La possibilité de gérer vos mots de passe et les appareils synchronisés avec Firefox Lockwise. Vous pouvez maintenant avoir un aperçu du nombre de mots de passe que vous avez stockés en toute sécurité avec Firefox Lockwise. Mozilla a également ajouté un bouton sur lequel vous pouvez cliquer pour afficher vos identifiants de connexion et les mettre à jour. Vous aurez également la possibilité de visualiser et de gérer rapidement le nombre de périphériques avec lesquels vous synchronisez et partagez vos mots de passe.
Cette version apporte plus de protection de la confidentialité dans Enhanced Tracking Protection:
- La protection face au pistage sur les réseaux sociaux, qui bloque les cookies de suivi entre sites en provenance de sites tels que Facebook, Twitter et LinkedIn.
- Le rapport de protection de la confidentialité affiche un aperçu, avec des détails, des traceurs bloqués par Firefox. Il fournit des rapports consolidés de Monitor et Lockwise.
Du côté de Firefox Lockwise, l'outil de gestion d’identité numérique et de mot de passe de Mozilla:
- Lockwise for desktop vous permet de créer, mettre à jour et supprimer vos identifiants de connexion et mots de passe à synchroniser sur tous vos appareils, y compris les applications mobiles Lockwise et les navigateurs mobiles Firefox.
- Alertes de violation intégrées provenant de Firefox Monitor vous avertit lorsque des identifiants de connexion et des mots de passe enregistrés sont compromis dans les violations de données en ligne.
- Génération complexe de mots de passe vous aide à créer et à sauvegarder des mots de passe forts pour les nouveaux comptes en ligne.
Télécharger Firefox
Source : note de version