Surfer anonymement, vraiment ?
Mise à jour le Lundi, 01 Février 2010 16:23
| Index de l'article |
|---|
| Surfer anonymement, vraiment ? |
| Informations transmises |
| Consolidation des informations |
| Solutions |
| Toutes les pages |
Nous utilisons des navigateurs pour consulter le web. Si nous souhaitons rester relativement anonymes (modulo les informations que nous transmettons volontairement), nous pouvons refuser les cookies ou, car cela signifie parfois que le site consulté devient inutilisable, accepter les cookies mais ne pas les mémoriser (ce qui revient à transformer tous les cookies en cookies de session).
Bien sûr, le serveur que nous consultons connaît notre adresse IP, donc nous pouvons utiliser TOR ou d'autres systèmes de relayage afin d'occulter cette origine.
Cela suffit-il ?
Informations transmises
En-têtes HTTP
Lorsqu'un navigateur envoie une requête vers un serveur, il incorpore des informations dans l'en-tête de la requête (voir le site du W3C pour plus d'informations et de détails), dont les plus connues sont :
- User-Agent : identification du navigateur
- Accept : types de réponses qui seront acceptables par le navigateur.
Voici un exemple des en-têtes (interceptés par TamperData) :

Ces informations sont reçues par le serveur web. Elles peuvent par exemple servir à adapter les informations produites, à établir des statistiques, etc. Elles permetten aussi d'identifier votre navigateur et donc, indirectement, vous-même.
Informations indirectes
D'autres informations peuvent être transmises, sur demande, par votre navigateur. Il suffit d'un peu d'ECMAScript pour cela.
Consolidation
L'Electronic Frontier Foundation (EFF) a mis en place un site spécifique, Panopticlick, qui permet de mesurer l'anonymat tout à fait relatif des mesures évoquées précédemment (pas de cookies ou cookies de session, relais anonymisant). Uniquement à partir des informations que le navigateur accepte d'envoyer au serveur, Panopticlick calcul le nombre de bits discriminants dont le serveur dispose pour distinguer votre navigateur d'un autre navigateur.
Sans ECMAScript
Voici par exemple le résultat de la collecte et analyse d'informations, suite à l'utilisation de Panopticlick avec un navigateur dans lequel nous avons désactivé Javascript :

Avec ECMASCript
Le même navigateur, JavaScript ayant été activé. Les bits d'informations identifiants sont passés de 17.65 à 17.67, une augmentation somme toute limitée.

Conclusion
Les résultats sont intéressants, et peu surprenants : le navigateur envoie suffisamment d'informations pour qu'un serveur vous identifie presque à coup sûr. Dans les deux exemples précédents, la configuration du navigateur utilisé était unique. Le nombre de bits identifiants est supérieur lorsqu'ECMAScript est activé sur le navigateur.
Paradoxalement, nous avons là (du moins par rapport aux tests que nous avons réalisés) une conséquence négative de nos efforts de sécurisation : plus nous travaillons à éliminer des éléments indésirables, et plus nous obtenons des configurations qui se révèlent relativement uniques. A l'inverse, plus la plate-forme utilisée est générique, plus la probabilité augmente que vous ne soyez pas le seul avec une certaine configuration de navigateur. Tout est ensuite à ramener à la fréquentation du site web concerné.
Dans tous les cas, il reste possible de réaliser un profil de l'internaute à partir de ce que le navigateur "veut bien dire" au serveur. Avec suffisamment de recoupements, notamment comportementaux (créneaux temporels d'utilisation, langues préférées, etc.), le profilage peut aller assez loin.
Solutions
La solution est simple : faites mentir vos navigateurs. Il existe des extensions Firefox pour modifier les en-têtes envoyés. Vous pouvez aussi utiliser un relais de navigation qui altère ces mêmes en-têtes. Par contre, vous aurez du mal à modifier les heures auxquelles vous surfez.
| Suivant > |
|---|



