Firefox Tweaks

Overview of Firefox's about:config security and privacy preferences

Mozilla Firefox is without the shadow of a doubt the browser that you can customize the most. This shows not only when it comes to (most) feature additions or changes, as there is usually a way to return to the old, but also when you dive into the depths of the about:config page.

The page lists a lot of preferences that you can all modify. Most are not accessible elsewhere in the browser, and you often find preferences listed here that Mozilla has implemented but not enabled yet for all users. Making changes to those can improve security or privacy.

How to use about:config

  • Enter "about:config" in the Firefox address bar and press enter.
  • Press the button "Accept the Risk and Continue" or "I accept the risk".
  • Follow the instructions below:

Instructions

plugins.enumerable_names = blank
Disable site reading installed plugins.
network.http.sendRefererHeader = 0
Tells website where you came from. Disabling may break some sites.

0 = Disable referrer headers.
1 = Send only on clicked links.
2 = (default) Send for links and image.
network.http.sendSecureXSiteReferrer = false
Disable referrer headers between https websites.
network.http.referer.spoofSource = true
Send fake referrer (if choose to send referrers).
geo.enabled = false
geo.wifi.uri = blank
browser.search.geoip.url = blank
Disables geolocation and Firefox logging geolocation requests.
browser.safebrowsing.enabled = false
browser.safebrowsing.phishing.enabled = false
browser.safebrowsing.malware.enabled = false
browser.safebrowsing.downloads.enabled = false
browser.safebrowsing.provider.google4.dataSharing.enabled = blank
browser.safebrowsing.provider.google4.updateURL = blank
browser.safebrowsing.provider.google4.reportURL = blank
browser.safebrowsing.provider.google4.reportPhishMistakeURL = blank
browser.safebrowsing.provider.google4.reportMalwareMistakeURL = blank
browser.safebrowsing.provider.google4.lists = blank
browser.safebrowsing.provider.google4.gethashURL = blank
browser.safebrowsing.provider.google4.dataSharingURL = blank
browser.safebrowsing.provider.google4.dataSharing.enabled = false
browser.safebrowsing.provider.google4.advisoryURL = blank
browser.safebrowsing.provider.google4.advisoryName = blank
browser.safebrowsing.provider.google.updateURL = blank
browser.safebrowsing.provider.google.reportURL = blank
browser.safebrowsing.provider.google.reportPhishMistakeURL = blank
browser.safebrowsing.provider.google.reportMalwareMistakeURL = blank
browser.safebrowsing.provider.google.pver = blank
browser.safebrowsing.provider.google.lists = blank
browser.safebrowsing.provider.google.gethashURL = blank
browser.safebrowsing.provider.google.advisoryURL = blank
browser.safebrowsing.downloads.remote.url = blank
Disable Google Safe Browsing and malware and phishing protection. Stop sending links and downloading lists from Google. It has a security risk, but on the other hand it is a privacy improvement.
toolkit.telemetry.cachedClientID = blank
Disables telemetry ID.
browser.selfsupport.url = blank
browser.aboutHomeSnippets.updateUrL = blank
browser.startup.homepage_override.mstone = ignore
browser.startup.homepage_override.buildID = blank
startup.homepage_welcome_url = blank
startup.homepage_welcome_url.additional = blank
startup.homepage_override_url = blank
These disable connections Firefox makes when your start the browser or visit your home page.
privacy.firstparty.isolate = true
A result of the Tor Uplift effort, this preference isolates all browser identifier sources (e.g. cookies) to the first party domain, with the goal of preventing tracking across different domains. (Don't do this if you are using the Firefox Addon "Cookie AutoDelete" with Firefox v58 or below.)
privacy.resistFingerprinting = true
A result of the Tor Uplift effort, this preference makes Firefox more resistant to browser fingerprinting.
privacy.trackingprotection.fingerprinting.enabled = true
[FF67+] Blocks Fingerprinting
privacy.trackingprotection.cryptomining.enabled = true
[FF67+] Blocks CryptoMining
privacy.trackingprotection.enabled = true
This is Mozilla's new built-in tracking protection. One of it's benefits is blocking tracking (i.e. Google Analytics) on privileged pages where add-ons that usually do that are disabled.
browser.send_pings = false
The attribute would be useful for letting websites track visitors' clicks.
browser.send_pings.require_same_host = true
This makes Firefox only send pings to the website you are currently on.
browser.urlbar.speculativeConnect.enabled = false
Disable preloading of autocomplete URLs. Firefox preloads URLs that autocomplete when a user types into the address bar, which is a concern if URLs are suggested that the user does not want to connect to. Source
dom.battery.enabled = false
Disable website reading how much battery your mobile device or laptop has.
dom.event.clipboardevents.enabled = false
Disable that websites can get notifications if you copy, paste, or cut something from a web page, and it lets them know which part of the page had been selected.
media.eme.enabled = false
Disables playback of DRM-controlled HTML5 content, which, if enabled, automatically downloads the Widevine Content Decryption Module provided by Google Inc. Details

DRM-controlled content that requires the Adobe Flash or Microsoft Silverlight NPAPI plugins will still play, if installed and enabled in Firefox.

media.gmp-widevinecdm.enabled = false
Disables the Widevine Content Decryption Module provided by Google Inc., used for the playback of DRM-controlled HTML5 content. Details
media.navigator.enabled = false
Websites can track the microphone and camera status of your device.
network.cookie.cookieBehavior = 1
Disable cookies
  • 0 = Accept all cookies by default
  • 1 = Only accept from the originating site (block third-party cookies). It's possible that not all content on websites (that use third-party cookies) can be seen.
  • 2 = Block all cookies by default
network.cookie.lifetimePolicy = 2
This clears cookies at the end of each browser session.
network.dnsCacheEntries = 100
This limits the amount of entries in your DNS cache which can give someone who has access to your computer a list of websites you visited.
network.http.referer.XOriginPolicy = 2
Only send Referer header when the full hostnames match. (Note: if you notice significant breakage, you might try 1 combined with an XOriginTrimmingPolicy tweak below.) Source
  • 0 = Send Referer in all cases
  • 1 = Send Referer to same eTLD sites
  • 2 = Send Referer only when the full hostnames match
network.http.referer.XOriginTrimmingPolicy = 2
When sending Referer across origins, only send scheme, host, and port in the Referer header of cross-origin requests. Source
  • 0 = Send full url in Referer
  • 1 = Send url without query string in Referer
  • 2 = Only send scheme, host, and port in Referer
webgl.disabled = true
WebGL is a potential security risk. Source
browser.sessionstore.privacy_level = 2
This preference controls when to store extra information about a session: contents of forms, scrollbar positions, cookies, and POST data. Details
  • 0 = Store extra session data for any site. (Default starting with Firefox 4.)
  • 1 = Store extra session data for unencrypted (non-HTTPS) sites only. (Default before Firefox 4.)
  • 2 = Never store extra session data.
beacon.enabled = false
Disables sending additional analytics to web servers. Details
browser.safebrowsing.downloads.remote.enabled = false
Prevents Firefox from sending information about downloaded executable files to Google Safe Browsing to determine whether it should be blocked for safety reasons. Details
Disable Firefox prefetching pages it thinks you will visit next:
Prefetching causes cookies from the prefetched site to be loaded and other potentially unwanted behavior. Details here and here.
  • network.dns.disablePrefetch = true
  • network.dns.disablePrefetchFromHTTPS = true
  • network.predictor.enabled = false
  • network.predictor.enable-prefetch = false
  • network.prefetch-next = false
network.IDN_show_punycode = true
Not rendering IDNs as their Punycode equivalent leaves you open to phishing attacks that can be very difficult to notice. Source
media.peerconnection.enabled = false
network.websocket.enabled = false
This setting disables WebRTC which can leak your IP address even with a VPN.
network.http.speculative-parallel-limit = 0
Disable prefetching on mouse hover.
places.history.enabled = false
Disables recording of visited websites.
browser.formfill.enable = false
Disables saving of form data.
browser.cache.disk.enable = false
browser.cache.disk_cache_ssl = false
browser.cache.memory.enable = false
browser.cache.offline.enable = false
Disables caching.
extensions.pocket.enabled = false
extensions.pocket.site = blank
extensions.pocket.oAuthConsumerKey = blank
extensions.pocket.api = blank
Disable 3rd party closed-source Pocket integration.