Plus de confidentialité sous Firefox

De Wiki de Eliott
Sauter à la navigation Sauter à la recherche

Cet article a pour but d'aider à renforcer la confidentialité du navigateur web Firefox (pour PC mais également applicable à Firefox mobile) à l'aide de différents paramètres et extensions bien utiles.

Le navigateur Firefox par défaut laisse fuiter de nombreuses informations pouvant être utilisées par des traqueurs publicitaires, des gouvernements ainsi que des sites web malveillants pour vous pister.

Mise en garde : Ces conseils permettent de bloquer la grande majorité des mécanismes de pistage web mais ne sont pas une garantie absolue qu'aucune donnée ne sera pistée et que tous les pisteurs seront bloqués. De plus, les technologies de suivi et les fonctionnalités de Firefox évoluant vite, le contenu de cette page peut s'avérer obsolète après seulement une dizaine de mois s'il n'est pas mis à jour.

Date de dernière mise à jour : 21/10/2020.

Paramètres avancés de vie privée

Pour y accéder : taper about:config dans la barre d'adresse en haut du navigateur et accepter l'avertissement.

Avertissement de la page about:config.

Pour accéder à un paramètre, il faut le taper (en entier ou juste une partie pour le voir s'afficher) et pour changer sa valeur il suffit d'utiliser les boutons tout à droite de la ligne du paramètre en question.

Propriétés de la page about:config.
privacy.firstparty.isolate = true

Permet d'isoler les cookies de 1ʳᵉ partie des autres cookies.


privacy.resistFingerprinting = true

Améliore les défenses contre le "fingerprinting".

Danger : Empêche l'extension CanvasBlocker de fonctionner.

privacy.resistFingerprinting.letterboxing =  true

Active la fonction de letterboxing (anti-fingerprint de la résolution de l'écran). Cette fonctionnalité est cachée, il faut donc créer le paramètre en tapant son nom en entier puis en choisissant le type "booléen".


javascript.use_us_english_locale = true

Change la langue envoyée aux scripts JavaScript vers l'anglais américain (US).


intl.accept_languages = "en-US, en"
privacy.spoof_english = 2

Change la langue envoyée aux sites web.


privacy.trackingprotection.fingerprinting.enabled = true
privacy.trackingprotection.cryptomining.enabled = true
privacy.trackingprotection.socialtracking.enabled = true
privacy.trackingprotection.enabled = true

Active la protection de base de Firefox contre le "fingerprinting", le minage de cryptomonnaies et le suivi des réseaux sociaux.


browser.send_pings = false

Bloquer l'audit hyperlien.


browser.urlbar.speculativeConnect.enabled = false

Désactive le préchargement des résultats de recherche suggérés dans la barre de recherche.


dom.event.clipboardevents.enabled = false

Désactive la possibilité pour les sites web de savoir si vous avez copié/collé/surligné un texte sur la page.


media.navigator.enabled = false

Désactive l'accès à la caméra et au micro.


network.cookie.cookieBehavior = 1

N'accepter que les cookies du site visité (bloque tous les cookies tiers).


network.http.referer.XOriginPolicy = 2

N'envoyer le referer que lorsque le nom de domaine est exactement le même.


network.http.referer.XOriginTrimmingPolicy = 2

Diminue la quantité d'infos envoyées par le referer (ici seulement le protocole, le domaine et le port).


browser.sessionstore.privacy_level = 2

Désactive le stockage de la session en cours après la fermeture du navigateur.


browser.cache.offline.enable = false

Désactive le cache hors-ligne.


privacy.sanitize.sanitizeOnShutdown = true
privacy.clearOnShutdown.cache = true
privacy.clearOnShutdown.downloads = true
privacy.clearOnShutdown.formdata = true
privacy.clearOnShutdown.offlineApps = true
privacy.clearOnShutdown.sessions = true
privacy.clearOnShutdown.siteSettings = true

Supprime à la fermeture de Firefox le cache, les téléchargements, les données de formulaire, les données d'applications, les sessions et les préférences de sites.


beacon.enabled = false

Désactive le mécanisme JavaScript d'envoi de données statistiques au site web consulté.


network.dns.disablePrefetch = true
network.dns.disablePrefetchFromHTTPS = true
network.predictor.enabled = false
network.predictor.enable-prefetch = false
network.prefetch-next = false

Désactive le préchargement DNS et de pages web.


network.security.esni.enabled = true

Active l'ESNI (Encrypted Server Name Indication). Cela permet de masquer le nom de domaine visité dans les paquets TCP des connexions HTTPS.


security.ssl.errorReporting.url = ""

Désactive le report d'erreur de connexion HTTPS.


browser.newtabpage.activity-stream.telemetry = false

Désactive la télémétrie d'ActivityStream.


extensions.getAddons.showPane = false
extensions.htmlaboutaddons.recommendations.enabled = false
browser.discovery.enabled = false

Désactive les recommandations dans about:addons.


datareporting.policy.dataSubmissionEnabled = false
app.normandy.enabled = false

Désactive l'envoi de données de diagnostic.


app.shield.optoutstudies.enabled = false

Désactive les études.


extensions.formautofill.available = false
extensions.formautofill.addresses.enabled = false
extensions.formautofill.creditCards.enabled = false
extensions.formautofill.heuristics.enabled = false

Désactive l'enregistrement des données de formulaire.


media.peerconnection.enabled = false

Désactive WebRTC.


dom.serviceWorkers.enabled = false

Désactive les Services Workers.


extensions.pocket.enabled = false

Désactive l'extension Pocket.

NOTE :

Si vous souhaitez paramétrer votre profil Firefox plus en détail :

- https://github.com/ghacksuserjs/ghacks-user.js

- https://ffprofile.com/

Paramètres avancés de sécurité

On ne peut pas avoir de vie privée sans un minimum de sécurité. Cette section propose une liste de paramètres avancés ayant pour but de renforcer la sécurité de Firefox.

Danger : Si vous chercher à avoir un navigateur avec une sécurité maximale et que vous pensez être une cible importante d'un État, n'utilisez pas Firefox, utilisez Chromium avec un système d'exploitation utilisant des fonctionnalités avancées de sécurité tel que QubesOS/Whonix.
security.ssl3.ecdhe_ecdsa_aes_128_sha = false
security.ssl3.ecdhe_ecdsa_aes_256_sha = false
security.ssl3.ecdhe_rsa_aes_128_sha = false
security.ssl3.ecdhe_rsa_aes_256_sha = false
security.ssl3.rsa_aes_128_sha = false
security.ssl3.rsa_aes_256_sha = false
security.ssl3.rsa_des_ede3_sha = flase
security.ssl3.rsa_aes_128_sha = false
security.ssl3.rsa_aes_256_sha = false

Désactive des suites de chiffrement obsolètes.


security.tls.version.fallback-limit = 2

Limite le nombre de retour en arrière de versions de TLS autorisés.


security.tls.enable_0rtt_data = false

Désactive la fonction 0-RTT de TLS 1.3 qui peut être utilisée par un attaquant pour usurper l'identité d'un client.

NOTE : Cela peut entraîner une augmentation de la latence des connexions TLS 1.3.


dom.security.https_only_mode = true

Active le mode HTTPS uniquement (exceptions possibles).

NOTE : Si vous activez cette fonction, vous pouvez désactiver/supprimer l'extension HTTPS Everywhere.


network.IDN_show_punycode = true

Désactive l'affichage des noms de domaines internationalisés (IDNs) qui peuvent être des sources de phishing.


accessibility.blockautorefresh = true

Bloque les rechargements automatiques de pages.


browser.urlbar.trimURLs = false

Affiche l'URL complète de la page visitée.

Extensions recommandées

Les extensions suivantes sont toutes disponibles sur le site officiel des extensions Firefox. Il vous suffit donc d'aller sur ce site pour installer ces extensions. Pour chacune d'elle, j'ai mis le lien vers la page de présentation de l'extension.

1) Absolute Enable Right Click & Copy

Permet de forcer l'activation du clic droit, de la sélection et de la copie de texte dans une page les bloquant. Lien

Configuration : rien a faire.

2) CanvasBlocker

Envoie de fausses informations ou bloque des API (Application Programming Interface) JavaScript pour limiter les techniques de pistage basées sur le "fingerpinting". Lien

Configuration : rien a faire.

3) ClearURLs

Supprime les paramètres de traçage présent dans des URL qui peuvent donner des infos sur la provenance du clic et ainsi que d'autres infos sur le navigateur en cours d'utilisation ou le lien précédemment cliqué. Lien

Configuration : rien a faire.

4) Cookie AutoDelete

Supprime les cookies/stockage local de tout les sites web visités sauf ceux autorisés pour éviter le traçage par des cookies 1st party. Lien

Configuration :

- Dans l'onglet "Paramètres des cookies", activer : "Activer le nettoyage automatique", "Afficher le nombre de cookies pour ce domaine", "Activer le journal et le compteur de nettoyage", "Nettoyer les cookies des onglets ouverts lors du démarrage" et "Nettoyer le Localstorage".

- Dans l'onglet "Liste d'expressions", taper le nom des sites à autoriser et cliquer sur "Liste blanche".

5) CSS Exfil Protection

Bloque les attaques d'exfiltration de données par CSS (Cascading Style Sheet). Lien

Configuration : rien a faire.

6) LocalCDN (fork de Decentraleyes)

(Decentraleyes semble un peu mort. Ce fork permet d'intercepter plus de contenus de CDN.)

Bloque les requêtes vers des CDN (Content Delivery Networks) et remplace les ressources demandées par une version stockée localement. Permet d’éviter le traçage par les serveurs des CDN. Lien

Configuration :

- Si utilisé avec uMatrix, dans les paramètres, cocher uMatrix et copier les règles à insérer dans les règles d'uMatrix.

7) History AutoDelete

Supprime automatiquement l'historique de certains sites ou de tout les sites après une période donnée. Lien

Configuration :

- Dans l'onglet "History Settings" cocher "Keep History for x Days".

- Dans l'onglet "List of Expressions", taper le nom des sites à autoriser et cliquer sur le "+".

8) HTTPS Everywhere

Force les connexions en HTTPS si disponibles et bloque optionnellement les requêtes non-HTTPS. Lien

Configuration : rien à faire.

9) Privacy Possum

Bloque certains cookies, les "referers", les "etag" et les techniques de "fingerprint". Lien

Configuration : rien à faire.

10) uBlock Origin

Bloque les pubs, traqueurs et tout ce que l'on veut bloquer. Lien

Configuration :

- Activer toutes les listes de blocage de l'onglet "Listes de filtres".

- Cocher toutes les cases de la section "Confidentialité" de l'onglet "Paramètres".

- Pour les plus parano : ajouter cette liste de blocage : https://block.energized.pro/ultimate/formats/filter (dispose d'un million de filtres).

11) uMatrix

Mise en garde : Cette extension a été récemment abandonnée par son développeur et attend un repreneur. Si elle n'en trouve pas un rapidement, elle sera supprimée de ce guide pour des raisons de sécurité.

Filtre matriciel qui permet de bloquer certaines ressources par défaut et de ne les autoriser que sur certains sites. Lien

Configuration :

- Dans l'onglet "Mes Règles", section "Règles temporaires", ajouter les règles suivantes :

* * * block
* * cookie block
* * frame block
* * image allow
* * script block
* 1st-party * allow

Puis "Enregistrer".

- Dans l'onglet "Paramètres", section "Confidentialité", n'activer que "Supprimer les cookies bloqués" et "Supprimer les données locales des noms d'hôtes bloqués".

12) User-Agent Switcher and Manager

Remplace l'agent utilisateur par un faux agent. Lien

Configuration :

- Dans l'interface de l'extension, choisir le nom du navigateur et du système d'exploitation à utiliser puis cliquer sur "Apply" et "Window".

13) Firefox Multi-Account Containers

Isole les sites web les uns des autres (cache, cookies, historique, ...) Lien

Très utile si utilisé avec l'extension suivante :

14) Temporary Containers

Isole les sites web dans des containers temporaires qui s'autodétruisent à la fermeture de l'onglet. Lien

15) Spoof Timezone

Falsifie le fuseau horaire. Lien

Je recommande de choisir le fuseau "Etc/GMT-0" car c'est le plus utilisé.

16) Header Editor

Modifie les en-têtes HTTP selon des règles pré-définies Lien

Ici, nous pouvons créer une règle qui supprime automatiquement le contenu des en-têtes "etag" souvent utilisées pour du tracking :

Dans "Rule Type" cochez : "Modify response header"

Dans "Match Type" cochez : "All"

Dans "Execute type" cochez : "Custom function" puis collez ce texte :

for (const a in val) if (val[a].name.toLowerCase() === 'etag') val[a].value = '';

NOTE :

Il est possible de tester si la configuration mise en place à l'aide des paramètres avancés et des extensions fait fuiter des informations à l'aide des sites suivants :

- https://browserleaks.com/

- https://panopticlick.eff.org/

Quelques extensions bien utiles

Ces extensions ne sont pas essentielles et n'ont pas forcément de rapport avec la protection de la vie privée mais sont bien utiles.

1) Cookie Quick Manager

Permet de voir / modifier / créer et supprimer des cookies des sites web visités. Lien

Configuration : rien à faire.

2) Dark Reader

Permet de basculer n'importe quel site en mode sombre. Très efficace. Lien

Configuration : rien à faire.

3) Firefox Lightbeam

Représente sous forme de graphe les interconnexions entre les sites web consultés et les sites web de tierce partie. Permet de se rendre compte de la centralisation du web. Lien

Configuration : rien à faire.

4) Flagfox

Affiche le pays de l'IP du serveur visité. Lien

Configuration : rien à faire.

5) Terms of Service; Didn’t Read

Résume et note les termes de service / politique de confidentialité des sites web visités. Lien

Configuration : rien à faire.

6) Wayback Machine

Permet de voir une version archivée de la page si celle-ci n'est plus disponible. Lien

Configuration : rien à faire.