Suivi des utilisateurs avec TLS

Introduction

La semaine dernière, des chercheurs en sécurité de l'Université de Hambourg ont publié un papier décrivant une nouvelle méthode que les sites Web pourraient utiliser pour suivre l'historique des utilisateurs du navigateur. Leur technique exploite la fonction de reprise de session implémentée dans le TLS protocole.

TLS brainstorming

TLS est un protocole cryptographique que les navigateurs utilisent pour sécuriser leurs communications avec les serveurs Web HTTPS en établissant une connexion cryptée entre un navigateur et un serveur. Dans TLS jargon, le serveur crée un Session pour chacun de ces TLS connexion.

La création d'une session nécessite l'échange de données supplémentaires, telles que des certificats numériques et des clés de chiffrement, avant toute donnée Web réelle. Le processus d'établissement d'un TLS session s'appelle le négociation de poignée de main

Effectuer une poignée de main pour chaque TLS la connexion nécessite plus de bande passante que HTTP non chiffré, et c'est l'un des principaux problèmes abordés dans le récent TLS Protocole 1.3.

Si vous souhaitez en savoir plus sur la surcharge de performances imposée par TLS et ce que TLS 1.3 fait pour le réduire, veuillez vous référer à cet article.

TLS reprise de session

Pour aider à réduire les frais généraux associés aux poignées de main, TLS permet reprise de session, qui permet à un navigateur d'ignorer le processus de prise de contact avec un serveur avec lequel il a récemment établi une session.

Une session dure une période de temps prédéterminée, de quelques minutes à plusieurs heures. Si le navigateur revisite un serveur dans la fenêtre de session, le TLS la session peut reprendre via un seul demande de reprise, au lieu d'une négociation de poignée de main complète (TLS 1.3 permet en fait à un navigateur d'envoyer des données d'application avec la demande de reprise de session, offrant effectivement les mêmes performances rapides que HTTP non chiffré.)

Suivi des utilisateurs avec TLS reprise de session

Malheureusement, dans la plupart des cas, la sécurité et l'utilité sont inversement proportionnelles, et les chercheurs de Hambourg ont démontré que la reprise de session améliore les performances au détriment de la vie privée des utilisateurs.

Au fil des ans, de nombreuses techniques ont été utilisées pour suivre les utilisateurs d'Internet, telles que les cookies persistants ou les empreintes digitales du navigateur. Ils sont tous conçus pour permettre aux sites Web d'identifier de manière unique un utilisateur à travers les visites, indépendamment de leur adresse IP, de leur emplacement ou de leurs préférences en matière de confidentialité.

À cet égard, un TLS la reprise de session, étant uniquement liée à un navigateur spécifique, peut être utilisée pour suivre les utilisateurs de la même manière que les cookies. Essentiellement, lorsqu'un navigateur reprend une session, le site Web peut mettre en corrélation la connexion avec celle qui a créé la session à l'origine, même si l'utilisateur visite depuis un réseau différent (c'est-à-dire une adresse IP différente) ou avec des paramètres de confidentialité différents (par exemple, user-agent ).

Attaque de prolongation

En utilisant la méthode décrite ci-dessus, chaque utilisateur individuel peut être suivi pendant (au plus) plusieurs heures, en fonction de la longueur de la fenêtre de session négociée.

Cependant, un site Web peut renouveler une session pour une autre période à chaque reprise de session, réinitialisant la fenêtre de session et prolongeant efficacement la durée de vie de la session indéfiniment. Le papier appelle cette technique un attaque de prolongation.

Les chercheurs ont démontré que cette technique peut être utilisée pour définitivement suivre 65% des utilisateurs dans leur ensemble de données, car ces utilisateurs ont tendance à visiter les sites Web de suivi plus souvent que les sessions n'expirent.

De plus, ils ont montré que les sites Web peuvent utiliser du contenu intégré pour suivre leurs utilisateurs même sur différents sites. Par exemple, un réseau publicitaire qui a intégré des annonces sur des millions de sites Web peut suivre les utilisateurs individuels sur TOUTE ces sites. (Il convient de noter que certains navigateurs, comme mentionné dans le document, bloquent les demandes de reprise de session de sites Web tiers.)

Suis-je vulnérable?

Du point de vue du protocole, tous TLS versions (y compris les dernières TLS 1.3) fournir un mécanisme de reprise de session, ce qui signifie que les utilisateurs peuvent être suivis à l'aide de cette technique, indépendamment de TLS version.

De plus, sur 48 navigateurs testés dans l'article, seuls 3 se sont révélés désactivés TLS reprise de session. Ces navigateurs sont:

  • Navigateur JonDo
  • Tor Browser
  • Orbot (pour mobile)

Pour tester si votre navigateur (ou un autre logiciel client) est vulnérable à cette technique de suivi, vous pouvez utiliser cet outil pour générer un rapport sur votre client TLS soutien.

Vérifiez la section «Détails du protocole» - si «Tickets de session» est réglé sur «Oui», la reprise de session est activée dans votre navigateur et vous êtes traçable.

Y a-t-il une solution?

TLS les tickets de reprise de session sont stockés dans le navigateur TLS cache, qui est détruit chaque fois que le processus du navigateur est fermé.

Si vous fermez régulièrement votre navigateur et qu'une confidentialité extrême n'est pas une nécessité absolue, vous devez être à l'abri de cette méthode.

Malheureusement, la plupart des systèmes d'exploitation mobiles modernes maintiennent les applications «toujours actives», ce qui signifie qu'il n'est pas inhabituel qu'une instance de navigateur reste active pendant des jours à la fois. Même si cela est peu plausible, il existe des cas où il est possible pour un utilisateur d'être suivi dans le monde réel.

Pour cette raison, divers groupes d'utilisateurs axés sur la confidentialité exhortent les navigateurs à désactiver cette fonctionnalité (ou au moins à ajouter une option pour la désactiver). Au moment d'écrire ces lignes, cependant, aucun navigateur majeur n'a discuté publiquement de la question.

En attendant, si vous avez besoin de plus de confidentialité, vous pouvez visiter un site Web en mode «incognito» ou «confidentialité». Un navigateur utilisant le mode de confidentialité créera un nouveau TLS cache qui n'aura pas accès aux tickets de reprise de session normaux.

Sinon, vous pouvez basculer temporairement vers l'un des trois navigateurs qui ne prennent pas en charge la reprise de session. Vous pouvez également désactiver manuellement cette fonctionnalité dans Firefox en utilisant la méthode suivante.

Désactiver les identifiants de session dans Mozilla Firefox

Mozilla Firefox était patché en 2014 pour prendre en charge une option non documentée dans la configuration du navigateur pour désactiver la reprise de session.

Pour désactiver la reprise de la session, vous devez visiter about:config dans un Firefox (cliquez sur «J'accepte le risque» pour continuer). Firefox affichera alors une liste de préférences pour votre navigateur.

Cliquez avec le bouton droit sur n'importe quelle préférence et sélectionnez «Nouveau» et «Booléen», comme indiqué dans l'image suivante.

 

Un message contextuel s'affiche pour vous demander le nom de la préférence. Type:

security.ssl.disable_session_identifiers

Et sélectionnez «vrai» pour la valeur. Si vous avez tout fait correctement, vous devriez voir quelque chose de similaire à l'image ci-dessous.

 

 

Si vous visitez maintenant le Outil de vérification du navigateur SSL avec votre Firefox, il devrait signaler que les «tickets de session» sont désactivés, ce qui signifie que vous êtes à l'abri de TLS suivi de session.

 

 

Mozilla commencera à bloquer tous les trackers tiers

Enfin, Mozilla a a récemment annoncé] qu'ils modifient leur politique de contenu. Ils ont introduit une nouvelle fonctionnalité appelée Blocage de contenu dans (actuellement le plus récent) Version 63, qui permet aux utilisateurs de bloquer tout contenu tiers détecté par Firefox sur les sites Web.

De plus, dans la version 65, Firefox commencera à bloquer TOUTE contenu tiers par défaut; De cette façon, les utilisateurs devront donner une autorisation explicite avant que tout contenu externe ne soit rendu.

Outre les améliorations considérables apportées à la confidentialité des utilisateurs, cette nouvelle politique de blocage de contenu réduira également par inadvertance l'impact sur la sécurité du TLS technique de reprise de session. Bien qu'il ne s'agisse en aucun cas d'une solution complète, les sites Web ne pourront suivre les utilisateurs de Firefox que lorsqu'ils les visitent, car le suivi intersite repose sur du contenu tiers.

Conclusion

Heureusement, le suivi des utilisateurs avec TLS s'est avérée plausible mais pas pratique pour la majorité des utilisateurs d'Internet. Quoi qu'il en soit, il existe des cas où une confidentialité absolue est requise, et bien que des solutions temporaires (telles que le correctif Firefox décrit ci-dessus) existent, nous pouvons nous attendre à une atténuation appropriée de la part des principaux fournisseurs de navigateurs.

Comme toujours, merci d'avoir choisi SSL.com - où nous croyons plus sûre Internet est un mieux Internet.

 

Abonnez-vous à la newsletter SSL.com

Ne manquez pas les nouveaux articles et mises à jour de SSL.com

Restez informé et en sécurité

SSL.com est un leader mondial de la cybersécurité, PKI et les certificats numériques. Inscrivez-vous pour recevoir les dernières nouvelles de l'industrie, des conseils et des annonces de produits de SSL.com.

Nous aimerions recevoir vos commentaires

Répondez à notre enquête et faites-nous part de votre avis sur votre récent achat.