Le navigateur Brave prendra des mesures contre les sites Web qui espionnent les visiteurs en analysant leurs ports Internet ouverts ou en accédant à d’autres ressources réseau susceptibles d’exposer des informations personnelles.
À partir de la version 1.54, Brave bloquera automatiquement l’analyse des ports de sites Web, une pratique dans laquelle un nombre étonnamment élevé de sites ont été découverts il y a quelques années. Selon cette liste compilée en 2021 par un chercheur qui passe par la poignée G666g1e, 744 sites Web ont scanné les ports des visiteurs, la plupart ou tous sans préavis ni demande d’autorisation préalable. eBay, Chick-fil-A, Best Buy, Kroger et Macy’s figuraient parmi les sites Web incriminés.
Certains sites utilisent des tactiques similaires pour tenter de prendre les empreintes digitales des visiteurs afin qu’ils puissent être réidentifiés à chaque fois qu’ils reviennent, même s’ils suppriment les cookies du navigateur. En exécutant des scripts qui accèdent aux ressources locales sur les appareils visiteurs, les sites peuvent détecter des modèles uniques dans un navigateur visiteur. Parfois, il existe des raisons bénignes pour lesquelles un site accède à des ressources locales, telles que la détection d’insécurités ou la possibilité pour les développeurs de tester leurs sites Web. Souvent, cependant, il y a des motifs plus abusifs ou malveillants impliqués.
La nouvelle version de Brave va freiner la pratique. Par défaut, aucun site Web ne pourra accéder aux ressources locales. Les utilisateurs plus avancés qui souhaitent qu’un site particulier ait un tel accès peuvent l’ajouter à une liste d’autorisation. L’interface ressemblera à la capture d’écran ci-dessous.
Brave continuera d’utiliser des règles de liste de filtres pour bloquer les scripts et les sites connus pour abuser des ressources de l’hôte local. De plus, le navigateur inclura une liste d’autorisation qui donne le feu vert aux sites connus pour accéder aux ressources de l’hôte local pour des raisons qui profitent aux utilisateurs.
« Brave a choisi d’implémenter l’autorisation localhost de cette manière en plusieurs étapes pour plusieurs raisons », ont écrit les développeurs du navigateur. « Plus important encore, nous nous attendons à ce que l’abus des ressources de l’hôte local soit beaucoup plus courant que les cas bénéficiant aux utilisateurs, et nous voulons éviter de présenter aux utilisateurs des boîtes de dialogue d’autorisation pour les demandes qui, selon nous, ne causeront que des dommages. »
L’analyse des ports et des autres activités qui accèdent aux ressources locales est généralement effectuée à l’aide de JavaScript hébergé sur le site Web et exécuté dans le navigateur du visiteur. Un principe de base de la sécurité Web connu sous le nom de politique de même origine empêche JavaScript hébergé par un domaine Internet d’accéder aux données ou aux ressources d’un domaine différent. Cela empêche le site malveillant A d’être en mesure d’obtenir des informations d’identification ou d’autres données personnelles associées au site B.
La même politique d’origine, cependant, n’empêche pas les sites Web d’interagir d’une certaine manière avec l’adresse IP localhost d’un visiteur de 127.0.0.1. Résumant cet article de la société de sécurité Forcepoint, les rédacteurs de Wikipédia expliquent pourquoi :
Même lorsque la politique de même origine est en vigueur (sans être assouplie par le partage de ressources d’origine croisée), certaines attaques informatiques d’origine croisée peuvent être effectuées. WebRTC peut être utilisé pour connaître l’adresse IP interne d’une victime. Si vous tentez de vous connecter à un port d’origine croisée, les réponses ne peuvent pas être lues face à la politique de même origine, mais un JavaScript peut toujours faire des déductions sur l’ouverture ou la fermeture du port en vérifiant si l’événement onload/onerror se déclenche, ou si nous obtenons un délai d’attente. Cela donne des opportunités de balayage de ports cross-origin. De plus, un JavaScript peut même identifier les services d’origine croisée en tirant parti des fichiers par défaut. Par exemple, si un JavaScript chargé depuis le site evil.com tente d’ouvrir le fichier http://127.0.0.1/images/jenkins.png et que l’événement onload se déclenche, on peut en déduire que la victime exécute Jenkins sur son propre ordinateur. De cette façon, l’attaquant peut trouver des services potentiellement vulnérables, par exemple sur le réseau interne, même face à la politique de même origine. Si un service est vulnérable à la falsification des demandes intersites, il peut même être compromis.
Cette forme d’accès cross-origin existe depuis que le web existe. Bien que Brave ait déclaré que le navigateur Safari d’Apple avait bloqué certaines formes d’accès à l’hôte local, il ne les bloquait pas toutes. Diverses extensions de navigateur bloquent également cet accès.
« Pour autant que nous sachions, Brave est le seul navigateur qui bloquera les demandes aux ressources localhost des sites publics sécurisés et non sécurisés, tout en maintenant un chemin de compatibilité pour les sites auxquels les utilisateurs font confiance (sous la forme de l’autorisation localhost discutée) » le poste Brave dit.
Le développeur du navigateur a ajouté :
Grâce à cet « accident » historique, une petite mais importante quantité de logiciels a été construite en s’attendant à être librement accessible par les sites Web, souvent de manière invisible pour les utilisateurs. Et bon nombre de ces utilisations sont bénignes. Les exemples incluent certains portefeuilles pour les crypto-monnaies, les logiciels de sécurité fournis par les banques ou les sociétés de sécurité et les périphériques matériels qui utilisent certaines interfaces Web pour la configuration.
Dans certaines situations, les navigateurs permettent également aux sites Web publics d’accéder aux ressources de l’hôte local pour aider les développeurs à tester leur logiciel.
Malheureusement, un large éventail de logiciels malveillants et préjudiciables aux utilisateurs sur le Web utilisent l’accès aux ressources de l’hôte local pour des raisons malveillantes. Par exemple, les scripts d’empreintes digitales tentent de détecter des modèles uniques dans les autres logiciels que vous exécutez sur votre appareil pour vous identifier à nouveau, et d’autres scripts tentent d’identifier les logiciels non sécurisés et vulnérables sur la machine et tentent de les exploiter.
Message mis à jour pour corriger les détails sur les limitations de la même politique d’origine.