Documentation built by DwarfMaster.
browser.aboutConfig.showWarning | false |
0=blank, 1=home, 2=last visited page, 3=resume previous session
browser.startup.page | 0 |
about:home=Firefox Home (default, see 0105), custom URL, about:blank
browser.startup.homepage | "about:blank" |
true=Firefox Home (default, see 0105), false=blank page
browser.newtabpage.enabled | false |
browser.newtabpage.activity-stream.showSponsored | false | |
browser.newtabpage.activity-stream.showSponsoredTopSites | false |
browser.newtabpage.activity-stream.default.sites | "" |
geo.provider.ms-windows-location | false | |
geo.provider.use_corelocation | false | |
geo.provider.use_geoclue | false |
extensions.getAddons.showPane | false |
extensions.htmlaboutaddons.recommendations.enabled | false |
browser.discovery.enabled | false |
browser.shopping.experience2023.enabled | false |
If disabled, no policy is shown or upload takes place, ever
datareporting.policy.dataSubmissionEnabled | false |
datareporting.healthreport.uploadEnabled | false |
The "unified" pref affects the behavior of the "enabled" pref - If "unified" is false then "enabled" controls the telemetry module - If "unified" is true then "enabled" only controls whether to record extended data
toolkit.telemetry.unified | false | |
toolkit.telemetry.enabled | false | |
toolkit.telemetry.server | "data:," | |
toolkit.telemetry.archive.enabled | false | |
toolkit.telemetry.newProfilePing.enabled | false | |
toolkit.telemetry.shutdownPingSender.enabled | false | |
toolkit.telemetry.updatePing.enabled | false | |
toolkit.telemetry.bhrPing.enabled | false | |
toolkit.telemetry.firstShutdownPing.enabled | false |
toolkit.telemetry.coverage.opt-out | true | |
toolkit.coverage.opt-out | true | |
toolkit.coverage.endpoint.base | "" |
browser.newtabpage.activity-stream.feeds.telemetry | false | |
browser.newtabpage.activity-stream.telemetry | false |
app.shield.optoutstudies.enabled | false |
Shield is a telemetry system that can push and test "recipes"
app.normandy.enabled | false | |
app.normandy.api_url | "" |
breakpad.reportURL | "" | |
browser.tabs.crashReporting.sendReport | false | |
browser.crashReports.unsubmittedCheck.enabled | false |
browser.crashReports.unsubmittedCheck.autoSubmit2 | false |
captivedetect.canonicalURL | "" | |
network.captive-portal-service.enabled | false |
network.connectivity-service.enabled | false |
SB has taken many steps to preserve privacy. If required, a full url is never sent to Google, only a part-hash of the prefix, hidden with noise of other real part-hashes. Firefox takes measures such as stripping out identifying parameters and since SBv4 (FF57+) doesn't even use cookies. (#Turn on browser.safebrowsing.debug to monitor this activity)
browser.safebrowsing.malware.enabled | false | |
browser.safebrowsing.phishing.enabled | false |
This is the master switch for the safebrowsing.downloads* prefs (0403, 0404)
browser.safebrowsing.downloads.enabled | false |
To verify the safety of certain executable files, Firefox may submit some information about the file, including the name, origin, size and a cryptographic hash of the contents, to the Google Safe Browsing service which helps Firefox determine whether or not the file should be blocked
browser.safebrowsing.downloads.remote.enabled | false | |
browser.safebrowsing.downloads.remote.url | "" |
browser.safebrowsing.downloads.remote.block_potentially_unwanted | false | |
browser.safebrowsing.downloads.remote.block_uncommon | false |
If clicked, it bypasses the block for that session. This is a means for admins to enforce SB
browser.safebrowsing.allowOverride | false |
network.prefetch-next | false |
network.dns.disablePrefetch | true | |
network.dns.disablePrefetchFromHTTPS | true |
network.predictor.enabled | false | |
network.predictor.enable-prefetch | false |
network.http.speculative-parallel-limit | 0 |
browser.places.speculativeConnect.enabled | false |
browser.send_pings | false |
e.g. in Tor, this stops your local DNS server from knowing your Tor destination as a remote Tor node will handle the DNS request
network.proxy.socks_remote_dns | true |
network.file.disable_unc_paths | true |
Gvfs/GIO has a set of supported protocols like obex, network, archive, computer, dav, cdda, gphoto2, trash, etc. From FF87-117, by default only sftp was accepted
network.gio.supported-protocols | "" |
network.proxy.failover_direct | false |
RemoteSettings, UpdateService, Telemetry [1]
network.proxy.allow_bypass | false |
0=default, 2=increased (TRR (Trusted Recursive Resolver) first), 3=max (TRR only), 5=off (no rollout) see "doh-rollout.home-region": USA 2019, Canada 2021, Russia/Ukraine 2022 [3]
network.trr.mode | 3 |
The custom uri is the value shown when you "Choose provider>Custom>"
network.trr.uri | "https://example.dns" | |
network.trr.custom_uri | "https://example.dns" |
browser.urlbar.speculativeConnect.enabled | false |
browser.urlbar.quicksuggest.enabled | false | |
browser.urlbar.suggest.quicksuggest.nonsponsored | false | |
browser.urlbar.suggest.quicksuggest.sponsored | false |
browser.search.suggest.enabled | false | |
browser.urlbar.suggest.searches | false |
browser.urlbar.trending.featureGate | false |
browser.urlbar.addons.featureGate | false | |
browser.urlbar.mdn.featureGate | false | |
browser.urlbar.pocket.featureGate | false | |
browser.urlbar.weather.featureGate | false | |
browser.urlbar.yelp.featureGate | false |
browser.urlbar.clipboard.featureGate | false |
browser.urlbar.recentsearches.featureGate | false |
browser.formfill.enable | false |
Alternatively, you can exclude on a per-engine basis by unchecking them in Options>Search
browser.urlbar.suggest.engines | false |
redraw timing attacks were largely mitigated in FF77+ [3]. Using RFP (4501) further hampers timing attacks. Don't forget clearing history on exit (2811). However, social engineering [2#limits][4][5] and advanced targeted timing attacks could still produce usable results
layout.css.visited_links_enabled | false |
browser.search.separatePrivateDefault | true | |
browser.search.separatePrivateDefault.ui.enabled | true |
can leak in cross-site forms *and* be spoofed
signon.autofillForms | false |
signon.formlessCapture.enabled | false |
hardens against potential credentials phishing 0 = don't allow sub-resources to open HTTP authentication credentials dialogs 1 = don't allow cross-origin sub-resources to open HTTP authentication credentials dialogs 2 = allow sub-resources to open HTTP authentication credentials dialogs (default)
network.auth.subresource-http-auth-allow | 1 |
network.http.windows-sso.enabled | false |
browser.cache.disk.enable | false |
browser.privatebrowsing.forceMediaMemoryCache | true | |
media.memory_cache_max_size | 65536 |
define on which sites to save extra session data such as form content, cookies and POST data 0=everywhere, 1=unencrypted sites, 2=nowhere
browser.sessionstore.privacy_level | 2 |
toolkit.winRegisterApplicationRestart | false |
URL shortcuts use a cached randomly named .ico file which is stored in your profile/shortcutCache directory. The .ico remains after the shortcut is deleted If set to false then the shortcuts use a generic Firefox icon
browser.shell.shortcutFavicons | false |
Your cipher and other settings can be used in server side fingerprinting
Blocks connections to servers that don't support RFC 5746 [2] as they're potentially vulnerable to a MiTM attack [3]. A server without RFC 5746 can be safe from the attack if it disables renegotiations but the problem is that the browser can't know that. Setting this pref to true is the only way for the browser to ensure there will be no unsafe renegotiations on the channel between the browser and the server
security.ssl.require_safe_negotiation | true |
This data is not forward secret, as it is encrypted solely under keys derived using the offered PSK. There are no guarantees of non-replay between connections
security.tls.enable_0rtt_data | false |
0=disabled, 1=enabled (default), 2=enabled for EV certificates only OCSP (non-stapled) leaks information about the sites you visit to the CA (cert authority) It's a trade-off between security (checking) and privacy (leaking info to the CA)
security.OCSP.enabled | 1 |
When a CA cannot be reached to validate a cert, Firefox just continues the connection (=soft-fail) Setting this pref to true tells Firefox to instead terminate the connection (=hard-fail) It is pointless to soft-fail when an OCSP fetch fails: you cannot confirm a cert is still valid (it could have been revoked) and/or you could be under attack (e.g. malicious blocking of OCSP servers)
security.OCSP.require | true |
0=disabled, 1=allow user MiTM (default; such as your antivirus), 2=strict
security.cert_pinning.enforcement_level | 2 |
0 = disabled 1 = consult CRLite but only collect telemetry 2 = consult CRLite and enforce both "Revoked" and "Not Revoked" results 3 = consult CRLite and enforce "Not Revoked" results, but defer to OCSP for "Revoked" (default)
security.remote_settings.crlite_filters.enabled | true | |
security.pki.crlite_mode | 2 |
security.mixed_content.block_display_content | true |
When the top-level is HTTPS, insecure subresources are also upgraded (silent fail)
dom.security.https_only_mode | true | |
dom.security.https_only_mode_pbm | true |
dom.security.https_only_mode.upgrade_local | true |
When attempting to upgrade, if the server doesn't respond within 3 seconds, Firefox sends a top-level HTTP request without path in order to check if the server supports HTTPS or not This is done to avoid waiting for a timeout which takes 90 seconds
dom.security.https_only_mode_send_http_background_request | false |
Bug: warning padlock not indicated for subresources on a secure page! [2]
security.ssl.treat_unsafe_negotiation_as_broken | true |
only works when it's possible to add an exception i.e. it doesn't work for HSTS discrepancies (https://subdomain.preloaded-hsts.badssl.com/)
browser.xul.error_pages.expert_bad_cert | true |
full URI: https://example.com:8888/foo/bar.html?id=1234 scheme+host+port+path: https://example.com:8888/foo/bar.html scheme+host+port: https://example.com:8888
0=send full URI (default), 1=scheme+host+port+path, 2=scheme+host+port
network.http.referer.XOriginTrimmingPolicy | 2 |
https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers
privacy.userContext.enabled | true | |
privacy.userContext.ui.enabled | true |
privacy.userContext.newTabContainerOnLeftClick.enabled | true |
true=Firefox will not choose a container (so your extension can) false=Firefox will choose the container/no-container (default)
browser.link.force_default_user_context_id_for_external_opens | true |
media.peerconnection.ice.proxy_only_if_behind_proxy | true |
When using a system-wide proxy, it uses the proxy interface
media.peerconnection.ice.default_address_only | true |
grant device access, but often results in breakage on video-conferencing platforms
media.peerconnection.ice.no_host | true |
media.gmp-provider.enabled | false |
dom.disable_window_move_resize | true |
browser.download.start_downloads_in_tmp_dir | true | |
browser.helperApps.deleteTempFileOnExit | true |
browser.uitour.enabled | false | |
browser.uitour.url | "" |
devtools.debugger.remote-enabled | false |
0 (default) or 1=allow, 2=block
permissions.default.shortcuts | 2 |
permissions.manager.defaultsUrl | "" |
webchannel.allowObject.urlWhitelist | "" |
network.IDN_show_punycode | true |
This setting controls if the option "Display in Firefox" is available in the setting below and by effect controls whether PDFs are handled in-browser or externally ("Ask" or "Open With") It doesn't break "state separation" of browser content (by not sharing with OS, independent apps). It maintains disk avoidance and application data isolation. It's convenient. You can still save to disk.
pdfjs.disabled | false | |
pdfjs.enableScripting | false |
browser.tabs.searchclipboardfor.middleclick | false |
DLP agents are background processes on managed computers that allow enterprises to monitor locally running applications for data exfiltration events, which they can allow/block based on customer defined DLP policies. 0=Block all requests, 1=Warn on all requests (which lets the user decide), 2=Allow all requests
browser.contentanalysis.enabled | false | |
browser.contentanalysis.default_result | 0 |
browser.download.useDownloadDir | false |
browser.download.alwaysOpenPanel | false |
browser.download.manager.addToRecentDocs | false |
browser.download.always_ask_before_handling_new_types | true |
1=profile, 2=user, 4=application, 8=system, 16=temporary, 31=all The pref value represents the sum: e.g. 5 would be profile and application directories
extensions.enabledScopes | 5 | |
extensions.autoDisableScopes | 15 |
extensions.postDownloadThirdPartyPrompt | false |
extensions.webextensions.restrictedDomains | "" |
ETP Strict Mode enables Total Cookie Protection (TCP) cross-site state tracking e.g. exceptions for SiteA and SiteB means PartyC on both sites is shared
browser.contentblocking.category | "strict" |
Opener and redirect heuristics are granted for 30 days, see [3]
privacy.antitracking.enableWebcompat | false |
via history (2830), will no longer remove sanitize on shutdown "cookie and site data" site exceptions (2815)
privacy.sanitize.sanitizeOnShutdown | true |
privacy.clearOnShutdown.cache | true | |
privacy.clearOnShutdown_v2.cache | true | |
privacy.clearOnShutdown.downloads | true | |
privacy.clearOnShutdown.formdata | true | |
privacy.clearOnShutdown.history | true | |
privacy.clearOnShutdown_v2.historyFormDataAndDownloads | true | |
privacy.clearOnShutdown.siteSettings | false | |
privacy.clearOnShutdown_v2.siteSettings | false |
privacy.clearOnShutdown.openWindows | true |
add exceptions for both sites e.g. https://www.youtube.com (site) + https://accounts.google.com (single sign on)
privacy.clearOnShutdown.cookies | true | |
privacy.clearOnShutdown.offlineApps | true | |
privacy.clearOnShutdown.sessions | true | |
privacy.clearOnShutdown_v2.cookiesAndStorage | true |
Firefox remembers your last choices. This will reset them when you start Firefox
privacy.clearSiteData.cache | true | |
privacy.clearSiteData.cookiesAndStorage | false | |
privacy.clearSiteData.historyFormDataAndDownloads | true | |
privacy.clearSiteData.siteSettings | false |
Firefox remembers your last choices. This will reset them when you start Firefox for "Clear Recent History" is opened, it is synced to the same as "history"
privacy.cpd.cache | true | |
privacy.clearHistory.cache | true | |
privacy.cpd.formdata | true | |
privacy.cpd.history | true | |
privacy.cpd.downloads | true | |
privacy.clearHistory.historyFormDataAndDownloads | true | |
privacy.cpd.cookies | false | |
privacy.cpd.sessions | true | |
privacy.cpd.offlineApps | false | |
privacy.clearHistory.cookiesAndStorage | false | |
privacy.cpd.openWindows | false | |
privacy.cpd.passwords | false | |
privacy.cpd.siteSettings | false | |
privacy.clearHistory.siteSettings | false |
Firefox remembers your last choice. This will reset the value when you start Firefox 0=everything, 1=last hour, 2=last two hours, 3=last four hours, 4=today which will display a blank value, and are not guaranteed to work
privacy.sanitize.timeSpan | 0 |
RFP (4501) overrides FPP In FF118+ FPP is on by default in private windows (4001) and in FF119+ is controlled by ETP (2701). FPP will also use Remote Services in future to relax FPP protections on a per site basis for compatibility (4004). https://searchfox.org/mozilla-central/source/toolkit/components/resistfingerprinting/RFPTargetsDefault.inc 1826408 - restrict fonts to system (kBaseFonts + kLangPackFonts) (Windows, Mac, some Linux) https://searchfox.org/mozilla-central/search?path=StandardFonts*.inc 1858181 - subtly randomize canvas per eTLD+1, per session and per window-mode (FF120+)
privacy.fingerprintingProtection.pbmode | true |
uses "RFPTargets" [1] which despite the name these are not used by RFP e.g. "+AllTargets,-CSSPrefersColorScheme,-JSDateTimeUTC" = all targets but allow prefers-color-scheme and do not change timezone e.g. "-AllTargets,+CanvasRandomization,+JSDateTimeUTC" = no targets but do use FPP canvas and change timezone
privacy.fingerprintingProtection.overrides | "" |
JSON format: e.g."[{\"firstPartyDomain\": \"netflix.com\", \"overrides\": \"-CanvasRandomization,-FrameRate,\"}]"
privacy.fingerprintingProtection.granularOverrides | "" |
privacy.fingerprintingProtection.remoteOverrides.enabled | false |
RFP overrides FPP (4000) FF128+ Arkenfox by default uses FPP (automatically enabled with ETP Strict). For most people this is all you need. To use RFP instead, add RFP (4501) to your overrides, and optionally add letterboxing (4504), spoof_english (4506), and webgl (4520). RFP is an all-or-nothing buy in: you cannot pick and choose what parts you want 418986 - limit window.screen & CSS media queries (FF41) 1281949 - spoof screen orientation (FF50) 1360039 - spoof navigator.hardwareConcurrency as 2 (FF55) FF56 1333651 - spoof User Agent & Navigator API version: android version spoofed as ESR (FF119 or lower) OS: JS spoofed as Windows 10, OS 10.15, Android 10, or Linux | HTTP Headers spoofed as Windows or Android 1369319 - disable device sensor API 1369357 - disable site specific zoom 1337161 - hide gamepads from content 1372072 - spoof network information API as "unknown" when dom.netinfo.enabled = true 1333641 - reduce fingerprinting in WebSpeech API FF57 1369309 - spoof media statistics 1382499 - reduce screen co-ordinate fingerprinting in Touch API 1217290 & 1409677 - enable some fingerprinting resistance for WebGL 1354633 - limit MediaError.message to a whitelist FF58+ 1372073 - spoof/block fingerprinting in MediaDevices API (FF59) Spoof: enumerate devices as one "Internal Camera" and one "Internal Microphone" Block: suppresses the ondevicechange event 1039069 - warn when language prefs are not set to "en*" (FF59) 1222285 & 1433592 - spoof keyboard events and suppress keyboard modifier events (FF59) Spoofing mimics the content language of the document. Currently it only supports en-US. Modifier events suppressed are SHIFT and both ALT keys. Chrome is not affected. 1337157 - disable WebGL debug renderer info (FF60) 1459089 - disable OS locale in HTTP Accept-Language headers (ANDROID) (FF62) 1479239 - return "no-preference" with prefers-reduced-motion (FF63) 1363508 - spoof/suppress Pointer Events (FF64) 1492766 - spoof pointerEvent.pointerid (FF65) 1485266 - disable exposure of system colors to CSS or canvas (FF67) 1494034 - return "light" with prefers-color-scheme (FF67) 1564422 - spoof audioContext outputLatency (FF70) 1595823 - return audioContext sampleRate as 44100 (FF72) 1607316 - spoof pointer as coarse and hover as none (ANDROID) (FF74) 1621433 - randomize canvas (previously FF58+ returned an all-white canvas) (FF78) 1506364 - return "no-preference" with prefers-contrast (FF80) 1653987 - limit font visibility to bundled and "Base Fonts" (Windows, Mac, some Linux) (FF80) 1461454 - spoof smooth=true and powerEfficient=false for supported media in MediaCapabilities (FF82) 531915 - use fdlibm's sin, cos and tan in jsmath (FF93, ESR91.1) 1756280 - enforce navigator.pdfViewerEnabled as true and plugins/mimeTypes as hard-coded values (FF100-115) 1692609 - reduce JS timing precision to 16.67ms (previously FF55+ was 100ms) (FF102) 1422237 - return "srgb" with color-gamut (FF110) 1794628 - return "none" with inverted-colors (FF114) 1554751 - return devicePixelRatio as 2 (previously FF41+ was 1) (FF127) 1787790 - normalize system fonts (FF128) 1835987 - spoof timezone as Atlantic/Reykjavik (previously FF55+ was UTC) (FF128)
RFP also has a few side effects: mainly that timezone is GMT, and websites will prefer light theme
privacy.resistFingerprinting | true | |
privacy.resistFingerprinting.pbmode | true |
privacy.window.maxInnerWidth | 1600 | |
privacy.window.maxInnerHeight | 900 |
privacy.resistFingerprinting.block_mozAddonManager | true |
Dynamically resizes the inner window by applying margins in stepped ranges [2] If you use the dimension pref, then it will only apply those resolutions. The format is "width1xheight1, width2xheight2, ..." (e.g. "800x600, 1000x1000") dislike the margins, then flip this pref, keeping in mind that it is effectively fingerprintable
privacy.resistFingerprinting.letterboxing | true | |
privacy.resistFingerprinting.letterboxing.dimensions | "" |
privacy.resistFingerprinting.exemptedDomains | "*.example.invalid" |
0=prompt, 1=disabled, 2=enabled
privacy.spoof_english | 1 |
browser.display.use_system_colors | false |
1=most recent window or tab, 2=new window, 3=new tab Stops malicious window sizes and some screen resolution leaks. You can still right-click a link and open in a new window
browser.link.open_newwindow | 3 |
browser.link.open_newwindow.restriction | 0 |
webgl.disabled | true |
Disk avoidance, application data isolation, eyeballs...
caches, searches, cookies, localStorage, IndexedDB etc (which you can achieve in normal mode). In fact, PB mode limits or removes the ability to control some of these, and you need to quit Firefox to clear them. PB is best used as a one off window (Menu>New Private Window) to provide a temporary self-contained new session. Close all private windows to clear the PB session.
browser.privatebrowsing.autostart | true |
capacity: -1=determine dynamically (default), 0=none, n=memory capacity in kibibytes
browser.cache.memory.enable | false | |
browser.cache.memory.capacity | 0 |
signon.rememberSignons | false |
permissions.memory_only | true |
Saved logins and passwords are not available. Reset the pref and restart to return them
security.nocertdb | true |
actual history (and bookmarks) already do. Your history is more detailed, so control that instead; e.g. disable history, clear history on exit, use PB mode
browser.chrome.site_icons | false |
browser.sessionstore.max_tabs_undo | 0 |
browser.sessionstore.resume_from_crash | false |
Application data isolation [1]
browser.download.forbid_open_with | true |
browser.urlbar.suggest.history | false | |
browser.urlbar.suggest.bookmark | false | |
browser.urlbar.suggest.openpage | false | |
browser.urlbar.suggest.topsites | false |
This value controls the total number of entries to appear in the location bar dropdown
browser.urlbar.maxRichResults | 0 |
browser.urlbar.autoFill | false |
places.history.enabled | false |
browser.taskbar.lists.enabled | false | |
browser.taskbar.lists.frequent.enabled | false | |
browser.taskbar.lists.recent.enabled | false | |
browser.taskbar.lists.tasks.enabled | false |
0=desktop, 1=downloads (default), 2=custom
browser.download.folderList | 2 |
If .supportedCountries includes your region (browser.search.region) and .supported is "detect" (default), then the UI will show. Stored data is not secure, uses JSON
extensions.formautofill.addresses.enabled | false | |
extensions.formautofill.creditCards.enabled | false |
dom.popup_allowed_events | "click dblclick mousedown pointerdown" |
browser.pagethumbnails.capturing_disabled | true |
alerts.useSystemBackend.windows.notificationserver.enabled | false |
Don't leak URL typos to a search engine, give an error message instead Examples: "secretplace,com", "secretplace/com", "secretplace com", "secret place.com" dropdown, or using keyword search shortcuts you configure in options (e.g. "d" for DuckDuckGo)
keyword.enabled | false |
Not recommended. Overriding these can cause breakage and performance issues, they are mostly fingerprintable, and the threat model is practically nonexistent
mathml.disabled | true |
svg.disabled | true |
gfx.font_rendering.graphite.enabled | false |
javascript.options.asmjs | false |
is enabled, then Ion can still be used by extensions (1599226)
javascript.options.ion | false | |
javascript.options.baselinejit | false | |
javascript.options.jit_trustedprincipals | true |
Vulnerabilities [1] have increasingly been found, including those known and fixed in native programs years ago [2]. WASM has powerful low-level access, making certain attacks (brute-force) and vulnerabilities more possible
javascript.options.wasm | false |
gfx.font_rendering.opentype_svg.enabled | false |
Optionally hide the UI setting which also disables the DRM prompt
media.eme.enabled | false | |
browser.eme.ui.enabled | false |
This is an application level fallback. Disabling IPv6 is best done at an OS/network level, and/or configured properly in system wide VPN setups.
network.dns.disableIPv6 | true |
0=always (default), 1=only if base domains match, 2=only if hosts match
network.http.referer.XOriginPolicy | 2 |
Firefox uses the system DNS to initially resolve the IP address of your DoH server. When set to a valid, working value that matches your "network.trr.uri" (0712) Firefox won't use the system DNS. If the IP doesn't match then DoH won't work
network.trr.bootstrapAddr | "10.0.0.1" |
extensions.blocklist.enabled | true |
network.http.referer.spoofSource | false |
security.dialog_enable_delay | 1000 |
disables those. FPI is no longer maintained except at Tor Project for Tor Browser's config
privacy.firstparty.isolate | false |
extensions.webcompat.enable_shims | true |
security.tls.version.enable-deprecated | false |
Web Compatibility Reporter adds a "Report Site Issue" button to send data to Mozilla
extensions.webcompat-reporter.enabled | false |
extensions.quarantinedDomains.enabled | true |
accessibility.force_disabled | "" | |
browser.urlbar.dnsResolveSingleWordsAfterSearch | "" | |
geo.provider.network.url | "" | |
geo.provider.network.logging.enabled | "" | |
geo.provider.use_gpsd | "" | |
network.protocol-handler.external.ms-windows-store | "" | |
privacy.partition.always_partition_third_party_non_cookie_storage | "" | |
privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage | "" | |
privacy.partition.serviceWorkers | "" |
Location-Aware Browsing, Full Screen Geo is behind a prompt (7002). Full screen requires user interaction
geo.enabled | false | |
full-screen-api.enabled | false |
Location, Camera, Microphone, Notifications [FF58+] Virtual Reality [FF73+] 0=always ask (default), 1=allow, 2=block exceptions as allow/block for frequently visited/annoying sites: i.e. not global
permissions.default.geo | 0 | |
permissions.default.camera | 0 | |
permissions.default.microphone | 0 | |
permissions.default.desktop-notification | 0 | |
permissions.default.xr | 0 |
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_gcm_sha256 | false | |
security.ssl3.rsa_aes_256_gcm_sha384 | false | |
security.ssl3.rsa_aes_128_sha | false | |
security.ssl3.rsa_aes_256_sha | false |
security.tls.version.min | 3 | |
security.tls.version.max | 4 |
and isolated with network partitioning (FF85+) and/or containers
security.ssl.disable_session_identifiers | true |
dom.securecontext.allowlist_onions | true | |
network.http.referer.hideOnionSource | true |
network.http.sendRefererHeader | 2 | |
network.http.referer.trimmingPolicy | 0 |
0=no-referer, 1=same-origin, 2=strict-origin-when-cross-origin, 3=no-referrer-when-downgrade
network.http.referer.defaultPolicy | 2 | |
network.http.referer.defaultPolicy.pbmode | 2 |
network.http.altsvc.enabled | false |
dom.event.contextmenu.enabled | false |
gfx.downloadable_fonts.enabled | false | |
gfx.downloadable_fonts.fallback_delay | -1 |
interaction, and paste is limited to focused editable fields
dom.event.clipboardevents.enabled | false |
extensions.systemAddon.update.enabled | false | |
extensions.systemAddon.update.url | "" |
privacy.donottrackheader.enabled | true |
network.cookie.cookieBehavior | 5 | |
privacy.fingerprintingProtection | true | |
network.http.referer.disallowCrossSiteRelaxingDefault | true | |
network.http.referer.disallowCrossSiteRelaxingDefault.top_navigation | true | |
privacy.partition.network_state.ocsp_cache | true | |
privacy.query_stripping.enabled | true | |
privacy.trackingprotection.enabled | true | |
privacy.trackingprotection.socialtracking.enabled | true | |
privacy.trackingprotection.cryptomining.enabled | true | |
privacy.trackingprotection.fingerprinting.enabled | true |
dom.serviceWorkers.enabled | false |
dom.webnotifications.enabled | false |
dom.push.enabled | false |
required in TRUSTED scenarios; i.e. after you grant device (microphone or camera) access
media.peerconnection.enabled | false |
in ETP Strict (2701) and sanitizing on close (2800s)
privacy.globalprivacycontrol.enabled | true |
browser.display.use_document_fonts | "" | |
browser.zoom.siteSpecific | "" | |
device.sensors.enabled | "" | |
dom.enable_performance | "" | |
dom.enable_resource_timing | "" | |
dom.gamepad.enabled | "" | |
dom.maxHardwareConcurrency | "" | |
dom.w3c_touch_events.enabled | "" | |
dom.webaudio.enabled | "" | |
font.system.whitelist | "" | |
general.appname.override | "" | |
general.appversion.override | "" | |
general.buildID.override | "" | |
general.oscpu.override | "" | |
general.platform.override | "" | |
general.useragent.override | "" | |
media.navigator.enabled | "" | |
media.ondevicechange.enabled | "" | |
media.video_stats.enabled | "" | |
media.webspeech.synth.enabled | "" | |
ui.use_standins_for_native_colors | "" | |
webgl.enable-debug-renderer-info | "" |
browser.startup.homepage_override.mstone | "ignore" |
browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons | false | |
browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features | false |
browser.urlbar.showSearchTerms.enabled | false |