Un Firefox qui respecte votre vie privée¶
Quand on est soucieux de sa vie privé / confidentialité sur le web, on peut facilement tomber dans deux extrêmes :
installer AdBlock (ou éventuellement Ghostery), et se dire que ça suffira
utiliser une extension comme NoScript, et voire sa navigation rendue pénible sur pas mal de sites…
Nous allons voir plusieurs extensions (ou configurations), qui vont permettre de rendre Firefox plutôt discret, tout en ayant pour but de nuire le moins possible à la navigation.
Pour cela, je vais présenter étape par étape, les différents éléments susceptibles de nuire à votre vie privée, et des outils pour y remédier.
Le referer HTTP¶
Chaque fois que vous cliquez sur un lien, votre navigateur enverra un en-tête HTTP au site sur lequel vous allez, en lui indiquant de quelle page vous venez. De la même façon, pour toutes les ressources (images, scripts…) que votre navigateur charge sur une page, il indique la page en question.
C’est ainsi que si vous mettez une innocente image dans la signature de vos messages sur un forum, vous pouvez très facilement suivre des internautes, en regardant de quelles pages ils viennent à chaque fois qu’ils chargent cette image. Inutile de vous parler des boutons « +1 » et « Like »…
Il est possible de supprimer tout simplement cet en-tête de vos requêtes. Malheureusement, certains sites ont besoin du referer pour fonctionner, souvent car ils font des vérifications de sécurité dessus (souvent pour éviter les attaques CSRF).
Pour parer à cela tout en ne cassant pas certains sites, je vous conseille l’excellent Smart Referer. L’avantage principal de cette extension est qu’elle enverra le referer correct seulement dans le cas où vous faites une requête destiné au site sur lequel vous êtes déjà.
Du coup, toutes les vérifications de sécurité passent, et vous y gagnez énormément en confidentialité :)
Flash¶
Too bad : les plugins Flash disposent de leur propre moyen de stocker des données.
Si on rajoute à ça le fait qu’ils sont un bon vecteur d’infection (et de ralentissement de PC :p), il est bon de ne pas les exécuter à tort et à travers.
Pour régler ce problème, il suffit de sélectionner « Demander pour activer », dans la liste déroulante qui se situe à droite de la liste des plugins de Firefox.
Et voilà, maintenant il vous suffit de cliquer sur la zone ou devrait être votre vidéo de chatons, pour lancer Flash. Il est évidemment possible d’ajouter certains sites en liste blanche.
HTTPS Everywhere !¶
Parce que beaucoup de sites disposent d’une version sécurisée (HTTPS), mais fonctionnent par défaut sur la version non chiffrée, l’EFF a développé une petite extension, HTTPS Everywhere, qui vous passera automatiquement sur la version chiffrée des sites sur lesquels elle est disponible.
Les redirections¶
Sur de nombreux sites, quand vous cliquez sur un lien externe, vous passez d’abord par une page de ce site qui vous redirige ensuite vers le site en question (généralement à des fins de statistiques).
Le site connaît donc les liens externe sur lesquels vous cliquez, et cette redirection ralentit votre navigation.
Pour éviter cela, il existe Redirect Cleaner, qui remplace les liens de redirection par un lien vers la destination finale.
Une couche de spoofing ?¶
De l’adresse IP¶
Si vous voulez vous amuser, vous pouvez installer une extension comme Modify Headers, et vous amuser à rajouter des headers du genre « X-Forwarded-For », « Client-IP »… en mettant une IP bidon (c’est le principe de IPFuck/IPFlood).
Ça ne change pas votre IP réelle, hein ! Mais ça peut éventuellement emmêler les pinceaux d’applications pas super bien conçues, donc c’est toujours bon à prendre.
Des recherches¶
Il est même possible d’envoyer de fausses requêtes aux moteurs de recherches que vous utilisez, afin de noyer vos requêtes dans un flux de requêtes générées aléatoirement.
Pour cela, utilisez TrackMeNot.
Do Not Track¶
Dans l’onglet « vie privée » des préférences, il est possible de dire que vous ne voulez pas être pisté pendant votre navigation.
Le principe de cette option, c’est que votre navigateur va rajouter un en-tête « DNT: 1 » à toutes vos requêtes. C’est-à-dire qu’il va dire au serveur « coucou, mon utilisateur il a dit qu’il voulait pas être surveillé ».
C’est tout. Libre au serveur de faire ce qu’il veut de cette information.
Du coup vous pouvez activer ceci, mais il faudra simplement espérer que les serveurs derrière traîteront spécifiquement vos requêtes, alors même que c’est souvent contre leur intérêt.
La cerise sur le gâteau¶
Vous avez maintenant un navigateur qui sera relativement peu consentant à divulguer tous ses secrets ou à retenir des choses non sollicitées.
Par contre, votre Firefox fera toujours des requête auprès des régies de pub, des outils de statistiques, etc… Leur travail s’en trouvera probablement compliqué, mais ça ne résout pas le problème.
Du coup, vous pouvez installer une de ces extensions, classées par degré de parano croissant :
AdBlock¶
AdBlock Plus, ou son fork AdBlock Edge, sont des extensions ultra-efficaces pour bloquer la publicité.
Il faut savoir qu’AdBlock fonctionne avec un système de listes, qui vont contenir chacune tout plein de règles de blocages. Or, il y a des listes pour bloquer la publicité, mais il y en a aussi qui vont faire de leur mieux pour bloquer les outils de statistiques, etc…
Il est bon à savoir que vous pouvez vous créer vos filtres personnels : de temps en temps, vous pouvez ouvrir la liste des éléments bloquables de la page où vous vous trouvez, et faire de petites règles bloquant les outils de statistiques qui ne le sont pas déjà.
Ghostery¶
Si AdBlock ne vous suffit pas, des extensions comme Ghostery, peuvent venir se rajouter. Ghostery est spécialisé dans le blocage d’outils de statistiques et autre petits espions.
RequestPolicy¶
Avec RequestPolicy, on entre dans une autre catégorie d’extension, qui ne contient pas une liste de choses à bloquer, mais plutôt une liste de choses à accepter.
Du coup, vous bénéficiez d’une confidentialité vraiment accrue, et vous êtes par la même occasion protégé de certaines attaques comme les CSRF. Plus besoin d’extension comme AdBlock ou Ghostery : tout ça est déjà bloqué à la base. Par contre, certains sites peuvent se mettre à fonctionner mal tant que vous n’avez pas créé d’exceptions pour eux (typiquement, plus d’images ni de CSS).
Le principe de RequestPolicy est donc d’interdire toutes les requêtes qui ne sont pas destinées au site sur lequel vous êtes : simple, et efficace. Il peut aussi autoriser par défaut toutes les requêtes, et ça sera à vous de mettre les domaines de votre choix en liste noire.
Par contre, après installation, vous vouz rendrez compte que pas mal de sites vont chercher des ressources sur des CDN (gstatic, cloudfront…), qu’il faudra donc passer en liste blanche. Une fois que ce sera fait, la plupart des sites fonctionneront parfaîtement, et vous aurez juste à rajouter des exceptions de temps en temps, pour les sites qui chargent toutes leurs ressources depuis un domaine différent du leur.
Ah, et je vous conseille d’utiliser au moins RequestPolicy 1.0, qui apporte pas mal d’améliorations par rapport à la 0.5.
Mise à jour : Regardez aussi du côté de Policeman, une alternative que je trouve personnellement plus aboutie.
NoScript¶
NoScript, est tout aussi radical que RequestPolicy, mais ne fonctionne pas pareil : RequestPolicy fonctionne au niveau « réseau », en bloquant certaines requêtes. NoScript, lui, va simplement interdire l’exécution de tous les scripts Javascript sur la page.
J’ai personellement une préférence pour RequestPolicy, qui « casse » moins les sites, et bloquera même des petites images qui vont se charger sur un domaine extérieur.
Par contre, NoScript permet de se prémunir d’exploits utilisant Javascript, et empêche même le site que vous visitez de faire des choses louches.
Conclusion¶
Avec toutes ces mesures, on peut arriver à un degré de discrétion plutôt bon.
Pour vous en rendre compte, de l’efficacité de toutes ces techniques, rien de mieux que de charger une page en regardant toutes les requêtes HTTP qui passent ;)
Par contre, même si on a vu des moyens pour atténuer largement leur portée, deux problèmes de fond restent :