{ /*** [SECTION 1000]: CACHE / SESSION (RE)STORE / FAVICONS Cache tracking/fingerprinting techniques [1][2][3] require a cache. Disabling disk (1001) *and* memory (1003) caches is one solution; but that's extreme and fingerprintable. A hardened Temporary Containers configuration can effectively do the same thing, by isolating every tab [4]. We consider avoiding disk cache (1001) so cache is session/memory only (like Private Browsing mode), and isolating cache to first party (4001) is sufficient and a good balance between risk and performance. ETAGs can also be neutralized by modifying response headers [5], and you can clear the cache manually or on a regular basis with an extension. [1] https://en.wikipedia.org/wiki/HTTP_ETag#Tracking_using_ETags [2] https://robertheaton.com/2014/01/20/cookieless-user-tracking-for-douchebags/ [3] https://www.grepular.com/Preventing_Web_Tracking_via_the_Browser_Cache [4] https://medium.com/@stoically/enhance-your-privacy-in-firefox-with-temporary-containers-33925cd6cd21 [5] https://github.com/arkenfox/user.js/wiki/4.2.4-Header-Editor ***/ /** CACHE ***/ /* 1001: disable disk cache * [SETUP-PERF] If you think disk cache may help (heavy tab user, high-res video), * or you use a hardened Temporary Containers, then feel free to override this * [NOTE] We also clear cache on exiting Firefox (see 2803) ***/ "browser.cache.disk.enable" = false; /* 1003: disable memory cache * capacity: -1=determine dynamically (default), 0=none, n=memory capacity in kibibytes ***/ # // user_pref("browser.cache.memory.enable", false); # // user_pref("browser.cache.memory.capacity", 0); /* 1006: disable permissions manager from writing to disk [RESTART] * [NOTE] This means any permission changes are session only * [1] https://bugzilla.mozilla.org/967812 ***/ # // user_pref("permissions.memory_only", true); // [HIDDEN PREF] /* 1007: disable media cache from writing to disk in Private Browsing * [NOTE] MSE (Media Source Extensions) are already stored in-memory in PB * [SETUP-WEB] ESR78: playback might break on subsequent loading (1650281) ***/ "browser.privatebrowsing.forceMediaMemoryCache" = true; # [FF75+] "media.memory_cache_max_size" = 65536; /** SESSIONS & SESSION RESTORE ***/ /* 1020: exclude "Undo Closed Tabs" in Session Restore ***/ # // user_pref("browser.sessionstore.max_tabs_undo", 0); /* 1021: disable storing extra session data [SETUP-CHROME] * 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; /* 1022: disable resuming session from crash ***/ # // user_pref("browser.sessionstore.resume_from_crash", false); /* 1023: set the minimum interval between session save operations * Increasing this can help on older machines and some websites, as well as reducing writes [1] * Default is 15000 (15 secs). Try 30000 (30 secs), 60000 (1 min) etc * [SETUP-CHROME] This can also affect entries in the "Recently Closed Tabs" feature: * i.e. the longer the interval the more chance a quick tab open/close won't be captured. * This longer interval *may* affect history but we cannot replicate any history not recorded * [1] https://bugzilla.mozilla.org/1304389 ***/ "browser.sessionstore.interval" = 30000; /* 1024: disable automatic Firefox start and session restore after reboot [FF62+] [WINDOWS] * [1] https://bugzilla.mozilla.org/603903 ***/ "toolkit.winRegisterApplicationRestart" = false; /** FAVICONS ***/ /* 1030: disable favicons in shortcuts * 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; /* 1031: disable favicons in history and bookmarks * Stored as data blobs in favicons.sqlite, these don't reveal anything that your * actual history (and bookmarks) already do. Your history is more detailed, so * control that instead; e.g. disable history, clear history on close, use PB mode * [NOTE] favicons.sqlite is sanitized on Firefox close, not in-session ***/ # // user_pref("browser.chrome.site_icons", false); /* 1032: disable favicons in web notifications ***/ # // user_pref("alerts.showFavicons", false); // [DEFAULT: false] }