Une vulnérabilité affectant le navigateur Safari peut divulguer l’identité d’un utilisateur et l’historique de son site Web, ont averti les chercheurs.

Le problème a été introduit dans l’implémentation de Safari de l’API IndexedDB dans sa dernière offre, la version 15. IndexedDB est une API de navigateur pour le stockage côté client conçue pour contenir des quantités importantes de données.

Pour éviter les fuites de données dues aux attaques de script intersite (XSS), IndexedDB suit la politique de même origine, en contrôlant quelles ressources peuvent accéder à chaque élément de données.

La politique de même origine limite la manière dont les documents ou les scripts chargés à partir d’une origine peuvent interagir avec des ressources d’autres origines. Il empêche également un script malveillant sur une page d’accéder à des données sensibles sur une autre page Web.

UN article de blog des chercheurs de FingerprintJS qui ont découvert le bogue, ont révélé que dans Safari 15 sur macOS, et dans tous les navigateurs sur iOS et iPadOS 15, l’API IndexedDB viole la politique de même origine dans l’implémentation de WebKit, ce qui rend les informations des utilisateurs accessibles .

« Il permet à des sites Web arbitraires d’apprendre quels sites Web l’utilisateur visite dans différents onglets ou fenêtres », explique le billet de blog. « Cela est possible car les noms de base de données sont généralement uniques et spécifiques au site Web.

« précisément identifié »

« De plus, nous avons observé que dans certains cas, les sites Web utilisent des identifiants uniques spécifiques à l’utilisateur dans les noms de bases de données. Cela signifie que les utilisateurs authentifiés peuvent être identifiés de manière unique et précise.

« Certains exemples populaires seraient YouTube, Google Calendar ou Google Keep. Tous ces sites Web créent des bases de données qui incluent l’identifiant d’utilisateur Google authentifié et dans le cas où l’utilisateur est connecté à plusieurs comptes, des bases de données sont créées pour tous ces comptes.

Non seulement les sites Web non fiables ou malveillants peuvent donc potentiellement apprendre l’identité d’un utilisateur, mais cela pourrait également permettre la liaison de plusieurs comptes distincts utilisés par le même utilisateur.

TU POURRAIS AUSSI AIMER Présentation de vAPI – un environnement de laboratoire open source pour en savoir plus sur la sécurité des API

Les chercheurs ont noté que ces fuites ne nécessitent aucune action spécifique de l’utilisateur. Un onglet ou une fenêtre qui s’exécute en arrière-plan et interroge continuellement l’API IndexedDB pour les bases de données disponibles peut savoir quels autres sites Web un utilisateur visite en temps réel, ont-ils expliqué.

Alternativement, les sites Web peuvent ouvrir n’importe quel site Web dans une fenêtre iframe ou contextuelle afin de déclencher une fuite basée sur IndexedDB pour ce site spécifique.

FingerprintJS affirme que plus de 30 des sites Alexa Top 1000 utilisent des bases de données indexées directement sur leur page d’accueil, les laissant potentiellement exposés au bogue, bien qu’ils « s’attendent à ce que le nombre soit nettement plus élevé dans des scénarios réels ».

Corriger entrant ?

Une preuve de concept peut être trouvée dans le billet de blog de FingerprintJS.

Apple a été informé du problème et, selon les chercheurs, les ingénieurs ont fusionné les correctifs potentiels et marqué le rapport comme résolu. Cependant, FingerprintJS indique que le problème est toujours présent et a laissé entendre qu’un correctif n’a pas encore été publié.

En attendant, les utilisateurs « ne peuvent pas faire grand-chose » pour se protéger contre la vulnérabilité, ont expliqué les chercheurs.

Martin Bajanik, ingénieur logiciel chez FingerprintJS, a déclaré La gorgée quotidienne: « L’impact réel est que les sites Web visités à l’aide d’un navigateur impacté (tous les navigateurs sur iOS 15 et iPadOS 15, ainsi que Safari 15 sur MacOS) peuvent accéder à certaines de vos activités de navigation dans différents onglets ou fenêtres.

« Nous ne sommes pas en mesure de savoir quels sites Web profitent de cette vulnérabilité, donc jusqu’à ce qu’elle soit corrigée, la vie privée des utilisateurs concernés peut ou non être violée par les sites qu’ils visitent. »

Bajanik a ajouté : « Les utilisateurs de MacOS peuvent passer à un autre navigateur entre-temps. Les utilisateurs d’iOS 15 et d’iPasOS 15 n’ont pas cette option car tous les navigateurs sont concernés – leurs options sont beaucoup plus limitées.

« Ils pourraient bloquer tout JavaScript par défaut et ne l’autoriser que sur des sites de confiance, mais cela entraînera une expérience de navigation gênante en raison de l’omniprésence de JavaScript sur le Web.

« J’espère que cette vulnérabilité sera corrigée sous peu, auquel cas la meilleure protection sera de mettre à jour son système d’exploitation une fois le problème résolu. »

La gorgée quotidienne a contacté Apple pour en savoir plus sur l’arrivée d’un correctif pour WebKit et iOS.