Compare commits

..

52 Commits
53.0 ... 54.0

Author SHA1 Message Date
132e0fa503 1202: aaaaaaand actually change the pref this time 2017-07-10 06:26:55 +12:00
c864c8ebb0 1202: TLS min raised to 1.2 #167 2017-07-10 06:22:52 +12:00
063b731054 nits 2017-07-10 05:52:44 +12:00
d7c282c0fa Merge pull request #168 from ghacksuserjs/earthlng-patch-1
update ghacks.net links to use https
2017-07-09 18:51:32 +02:00
b24dd123d0 update ghacks.net links to use https 2017-07-09 18:49:39 +02:00
8b0bc463c5 2001: link update
www.privacytools.io redirects to https://privacytoolsio.github.io/privacytools.io/ and in the process drops the anchor info (#webrtc)
2017-07-09 17:58:05 +02:00
4d31983e06 0420: TP fixup default values 2017-07-09 22:58:57 +12:00
e018583082 2701: cookies & 3rd party info #159 2017-07-08 05:24:33 +12:00
6348826519 1212: turn on OCSP 2017-07-08 05:12:52 +12:00
b55a986d52 1210's: OCSP add reference 2017-07-07 00:09:54 +12:00
ba78702686 1610 DNT & 0420 TP clarify conflicts #163 2017-07-06 19:03:36 +12:00
32327e15c1 2699: spoof network info API 2017-07-01 03:05:45 +12:00
d1306aee26 2699: gamepad API 2017-06-30 03:10:39 +12:00
ac77e65d82 2699: site specific zoom 2017-06-30 03:09:19 +12:00
6b7032ccaf 2699: device sensor API 2017-06-29 04:48:56 +12:00
6ef86fbde6 0209 FF version fix, 2699a hidden pref info
I removed the "(hidden pref)" info when we revamped 2699, as it will no longer be hidden. In hindsight, that info needs to stay (we haven't archived off end-of-life 54, and it's good information for backwards compatibility).
2017-06-22 05:37:47 +12:00
0176d8676c 2698: isolate data://, about: 2017-06-21 18:37:27 +12:00
da1b9054ad 2629: fix ref source 2017-06-21 18:31:00 +12:00
fba479944d spacing nit 2017-06-21 17:17:15 +12:00
791b4114c6 2699: spoof Navigator API
https://reviewboard.mozilla.org/r/147474/diff/4#index_header

I would have thought rounding DOWN to the nearest multiple of 10 would be better. Imagine being on FF61 and claiming to be 70 = might cause site issues
2017-06-21 17:15:56 +12:00
8cdc6e766c 2699 revamp #143 2017-06-20 10:47:11 +12:00
319db71e82 nits 2017-06-20 03:56:15 +12:00
907e0aaa24 1408: graphite: update & add ref 2017-06-20 03:25:31 +12:00
5e0f37c925 2698 revamp #143 & FPI=>active 2017-06-20 03:05:51 +12:00
06018367a1 Merge pull request #146 from carmenbianca/line-endings
Convert line endings to LF
2017-06-19 09:11:20 +12:00
7b2d67976c Convert line endings to LF
Added .gitattributes file to prevent CRLF from being committed in the
future.

Fixes #145
2017-06-17 09:13:14 +02:00
7a0fbb6a31 end of 54 commits
ready for alpha release and changelog
2017-06-15 02:48:55 +12:00
1f18162d56 Merge pull request #141 from ghacksuserjs/138-patch
#138 add notes to some inactive prefs
2017-06-15 02:06:26 +12:00
eba592c7e5 minor edit 2017-06-14 06:08:25 +12:00
46bfeca8c2 #138
These all seem kinda lame TBH
2017-06-14 06:04:32 +12:00
eeedf0db72 1032: favicons in web notifications=>active
enforce default
2017-06-14 04:56:00 +12:00
1ad970741c 1606: default Referrer Policy=>active 2017-06-14 04:37:46 +12:00
f61c951ca0 3029: disable Firefox Screenshots 2017-06-14 04:13:53 +12:00
b9e321c45a 2805: privacy.*.openWindows 2017-06-14 04:09:31 +12:00
8a9a4fe427 2515: disable site specific zoom #135 2017-06-14 03:38:45 +12:00
44c4a62820 fix syntax from last commit 2017-06-13 19:24:23 +12:00
ab7dfb7f43 2001: disable WebRTC over TCP 2017-06-13 19:12:34 +12:00
3c7789defc 2300 revamp #71 2017-06-13 00:11:26 +12:00
82432a3d40 FF54 deprecated 2017-06-12 23:55:17 +12:00
75f6bc8b5d 2699g: reduce precision of time exposed by JS 2017-06-10 07:33:04 +12:00
b53b4832d4 1220: add reference 2017-06-09 01:11:55 +12:00
9719fc319d 0603b: add reference 2017-06-09 01:08:19 +12:00
9340f8ba04 1240: add reference 2017-06-09 01:05:56 +12:00
dd01dd54c6 1100s: add 2 process/sandbox prefs => inactive 2017-06-06 06:22:19 +12:00
1a04c1314e 0809: disable preloaded top website suggestions 2017-06-06 05:11:59 +12:00
ec03969d98 0863: disable Form Autofill 2017-06-06 05:07:48 +12:00
1621cd5e48 0361: disable Activity Stream 2017-06-06 04:38:38 +12:00
0006ee04b4 1202: TLS max+fallback=>active
regardless of default, time to turn it on in 54
2017-06-06 04:08:24 +12:00
08fbc37870 1266: add ref link 2017-06-05 16:12:55 +12:00
9859cc8889 9999 nits 2017-06-04 18:11:46 +02:00
a4be5471f1 0607 [WINDOWS] tag 2017-06-04 09:15:09 +12:00
d1e02e407b start 54 commits
10 days to go guys and gals
2017-06-04 08:08:26 +12:00
2 changed files with 1928 additions and 1831 deletions

8
.gitattributes vendored Normal file
View File

@ -0,0 +1,8 @@
* text=auto
*.js text
*.md text
*.yml text
*.txt text
*.png binary

337
user.js
View File

@ -1,8 +1,8 @@
/****** /******
* name: ghacks user.js * name: ghacks user.js
* date: 27 April 2017 * date: 14 June 2017
* version 53: Achy Breaky Pants * version 54: Pantsthumping
* "But don't tell my pants, my achy breaky pants, I just don't think they'd understand" * "I get pulled down, but I get up again, you're never gonna keep me down"
* authors: v52+ github | v51- www.ghacks.net * authors: v52+ github | v51- www.ghacks.net
* url: https://github.com/ghacksuserjs/ghacks-user.js * url: https://github.com/ghacksuserjs/ghacks-user.js
@ -94,7 +94,7 @@ user_pref("intl.accept_languages", "en-US, en");
/* 0208: enforce US English locale regardless of the system locale /* 0208: enforce US English locale regardless of the system locale
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=867501 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=867501 ***/
user_pref("javascript.use_us_english_locale", true); // (hidden pref) user_pref("javascript.use_us_english_locale", true); // (hidden pref)
/* 0209: disable geolocation on non-secure origins (FF55+) /* 0209: disable geolocation on non-secure origins (FF54+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1072859 * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1072859
* [2] https://www.ghacks.net/2017/03/14/firefox-55-geolocation-requires-secure-origin/ ***/ * [2] https://www.ghacks.net/2017/03/14/firefox-55-geolocation-requires-secure-origin/ ***/
user_pref("geo.security.allowinsecure", false); user_pref("geo.security.allowinsecure", false);
@ -190,6 +190,9 @@ user_pref("browser.newtabpage.directory.source", "data:text/plain,");
user_pref("browser.newtabpage.enabled", false); user_pref("browser.newtabpage.enabled", false);
user_pref("browser.newtabpage.enhanced", false); user_pref("browser.newtabpage.enhanced", false);
user_pref("browser.newtabpage.introShown", true); user_pref("browser.newtabpage.introShown", true);
/* 0361: disable Activity Stream (system addon) (FF54+)
* [1] https://wiki.mozilla.org/Firefox/Activity_Stream ***/
user_pref("browser.newtabpage.activity-stream.enabled", false);
/* 0370: disable "Snippets" (Mozilla content shown on about:home screen) /* 0370: disable "Snippets" (Mozilla content shown on about:home screen)
* MUST use HTTPS - arbitrary content injected into this page via http opens up MiTM attacks * MUST use HTTPS - arbitrary content injected into this page via http opens up MiTM attacks
* [1] https://wiki.mozilla.org/Firefox/Projects/Firefox_Start/Snippet_Service ***/ * [1] https://wiki.mozilla.org/Firefox/Projects/Firefox_Start/Snippet_Service ***/
@ -212,7 +215,7 @@ user_pref("social.share.activationPanelEnabled", false);
user_pref("social.enabled", false); // (hidden pref) user_pref("social.enabled", false); // (hidden pref)
/* 0376: disable FlyWeb, a set of APIs for advertising and discovering local-area web servers /* 0376: disable FlyWeb, a set of APIs for advertising and discovering local-area web servers
* [1] https://wiki.mozilla.org/FlyWeb * [1] https://wiki.mozilla.org/FlyWeb
* [2] http://www.ghacks.net/2016/07/26/firefox-flyweb/ ***/ * [2] https://www.ghacks.net/2016/07/26/firefox-flyweb/ ***/
user_pref("dom.flyweb.enabled", false); user_pref("dom.flyweb.enabled", false);
/*** 0400: BLOCKLISTS / SAFE BROWSING / TRACKING PROTECTION /*** 0400: BLOCKLISTS / SAFE BROWSING / TRACKING PROTECTION
@ -276,8 +279,6 @@ user_pref("browser.safebrowsing.downloads.remote.enabled", false);
user_pref("browser.safebrowsing.downloads.remote.url", ""); user_pref("browser.safebrowsing.downloads.remote.url", "");
/* 0415: disable reporting URLs ***/ /* 0415: disable reporting URLs ***/
user_pref("browser.safebrowsing.provider.google.reportURL", ""); user_pref("browser.safebrowsing.provider.google.reportURL", "");
user_pref("browser.safebrowsing.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.reportPhishMistakeURL", "");
user_pref("browser.safebrowsing.reportPhishURL", ""); user_pref("browser.safebrowsing.reportPhishURL", "");
user_pref("browser.safebrowsing.provider.google4.reportURL", ""); // (FF50+) user_pref("browser.safebrowsing.provider.google4.reportURL", ""); // (FF50+)
user_pref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", ""); // (FF54+) user_pref("browser.safebrowsing.provider.google.reportMalwareMistakeURL", ""); // (FF54+)
@ -293,10 +294,11 @@ user_pref("browser.safebrowsing.provider.google4.reportPhishMistakeURL", ""); //
There are NO privacy concerns here, but we strongly recommend to use uBlock Origin as well, There are NO privacy concerns here, but we strongly recommend to use uBlock Origin as well,
as it offers more comprehensive and specialized lists. It also allows per domain control. ***/ as it offers more comprehensive and specialized lists. It also allows per domain control. ***/
/* 0420: enable Tracking Protection in all windows /* 0420: enable Tracking Protection in all windows
* [NOTE] TP sends DNT headers regardless of the DNT pref (see 1610)
* [1] https://wiki.mozilla.org/Security/Tracking_protection * [1] https://wiki.mozilla.org/Security/Tracking_protection
* [2] https://support.mozilla.org/en-US/kb/tracking-protection-firefox ***/ * [2] https://support.mozilla.org/en-US/kb/tracking-protection-firefox ***/
user_pref("privacy.trackingprotection.pbmode.enabled", true); // user_pref("privacy.trackingprotection.pbmode.enabled", true); // default true
user_pref("privacy.trackingprotection.enabled", true); // user_pref("privacy.trackingprotection.enabled", true); // default false
/* 0421: enable more Tracking Protection choices under Options>Privacy>Use Tracking Protection /* 0421: enable more Tracking Protection choices under Options>Privacy>Use Tracking Protection
* Displays three choices: "Always", "Only in private windows", "Never" ***/ * Displays three choices: "Always", "Only in private windows", "Never" ***/
user_pref("privacy.trackingprotection.ui.enabled", true); user_pref("privacy.trackingprotection.ui.enabled", true);
@ -305,7 +307,7 @@ user_pref("privacy.trackingprotection.ui.enabled", true);
// user_pref("urlclassifier.trackingTable", "test-track-simple,base-track-digest256"); // basic // user_pref("urlclassifier.trackingTable", "test-track-simple,base-track-digest256"); // basic
// user_pref("urlclassifier.trackingTable", "test-track-simple,base-track-digest256,content-track-digest256"); // strict // user_pref("urlclassifier.trackingTable", "test-track-simple,base-track-digest256,content-track-digest256"); // strict
/* 0423: disable Mozilla's blocklist for known Flash tracking/fingerprinting (FF48+) /* 0423: disable Mozilla's blocklist for known Flash tracking/fingerprinting (FF48+)
* [1] http://www.ghacks.net/2016/07/18/firefox-48-blocklist-against-plugin-fingerprinting/ * [1] https://www.ghacks.net/2016/07/18/firefox-48-blocklist-against-plugin-fingerprinting/
* [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1237198 ***/ * [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1237198 ***/
// user_pref("browser.safebrowsing.blockedURIs.enabled", false); // user_pref("browser.safebrowsing.blockedURIs.enabled", false);
/* 0424: disable Mozilla's tracking protection and Flash blocklist updates ***/ /* 0424: disable Mozilla's tracking protection and Flash blocklist updates ***/
@ -318,7 +320,7 @@ user_pref("ghacks_user.js.parrot", "0600 syntax error: the parrot's no more!");
* [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Link_prefetching_FAQ ***/ * [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Link_prefetching_FAQ ***/
user_pref("network.prefetch-next", false); user_pref("network.prefetch-next", false);
/* 0602: disable DNS prefetching /* 0602: disable DNS prefetching
* [1] http://www.ghacks.net/2013/04/27/firefox-prefetching-what-you-need-to-know/ * [1] https://www.ghacks.net/2013/04/27/firefox-prefetching-what-you-need-to-know/
* [2] https://developer.mozilla.org/en-US/docs/Web/HTTP/Controlling_DNS_prefetching ***/ * [2] https://developer.mozilla.org/en-US/docs/Web/HTTP/Controlling_DNS_prefetching ***/
user_pref("network.dns.disablePrefetch", true); user_pref("network.dns.disablePrefetch", true);
user_pref("network.dns.disablePrefetchFromHTTPS", true); // (hidden pref) user_pref("network.dns.disablePrefetchFromHTTPS", true); // (hidden pref)
@ -327,20 +329,21 @@ user_pref("network.dns.disablePrefetchFromHTTPS", true); // (hidden pref)
user_pref("network.predictor.enabled", false); user_pref("network.predictor.enabled", false);
/* 0603b: disable more Necko/Captive Portal /* 0603b: disable more Necko/Captive Portal
* [1] https://en.wikipedia.org/wiki/Captive_portal * [1] https://en.wikipedia.org/wiki/Captive_portal
* [2] https://wiki.mozilla.org/Necko/CaptivePortal ***/ * [2] https://wiki.mozilla.org/Necko/CaptivePortal
* [3] https://trac.torproject.org/projects/tor/ticket/21790 ***/
user_pref("captivedetect.canonicalURL", ""); user_pref("captivedetect.canonicalURL", "");
user_pref("network.captive-portal-service.enabled", false); // (FF52+) user_pref("network.captive-portal-service.enabled", false); // (FF52+)
/* 0605: disable link-mouseover opening connection to linked server /* 0605: disable link-mouseover opening connection to linked server
* [1] http://news.slashdot.org/story/15/08/14/2321202/how-to-quash-firefoxs-silent-requests * [1] http://news.slashdot.org/story/15/08/14/2321202/how-to-quash-firefoxs-silent-requests
* [2] http://www.ghacks.net/2015/08/16/block-firefox-from-connecting-to-sites-when-you-hover-over-links ***/ * [2] https://www.ghacks.net/2015/08/16/block-firefox-from-connecting-to-sites-when-you-hover-over-links ***/
user_pref("network.http.speculative-parallel-limit", 0); user_pref("network.http.speculative-parallel-limit", 0);
/* 0606: disable pings (but enforce same host in case) /* 0606: disable pings (but enforce same host in case)
* [1] http://kb.mozillazine.org/Browser.send_pings * [1] http://kb.mozillazine.org/Browser.send_pings
* [2] http://kb.mozillazine.org/Browser.send_pings.require_same_host ***/ * [2] http://kb.mozillazine.org/Browser.send_pings.require_same_host ***/
user_pref("browser.send_pings", false); user_pref("browser.send_pings", false);
user_pref("browser.send_pings.require_same_host", true); user_pref("browser.send_pings.require_same_host", true);
/* 0607: disable links launching Windows Store on Windows 8/8.1/10 /* 0607: disable links launching Windows Store on Windows 8/8.1/10 [WINDOWS]
* [1] http://www.ghacks.net/2016/03/25/block-firefox-chrome-windows-store/ ***/ * [1] https://www.ghacks.net/2016/03/25/block-firefox-chrome-windows-store/ ***/
user_pref("network.protocol-handler.external.ms-windows-store", false); user_pref("network.protocol-handler.external.ms-windows-store", false);
/* 0608: disable predictor / prefetching (FF48+) ***/ /* 0608: disable predictor / prefetching (FF48+) ***/
user_pref("network.predictor.enable-prefetch", false); user_pref("network.predictor.enable-prefetch", false);
@ -390,6 +393,9 @@ user_pref("browser.search.suggest.enabled", false);
* [SETTING] Options>Search>Show search suggestions in location bar results ***/ * [SETTING] Options>Search>Show search suggestions in location bar results ***/
user_pref("browser.urlbar.suggest.searches", false); user_pref("browser.urlbar.suggest.searches", false);
user_pref("browser.urlbar.userMadeSearchSuggestionsChoice", true); // (FF41+) user_pref("browser.urlbar.userMadeSearchSuggestionsChoice", true); // (FF41+)
/* 0809: disable location bar suggesting "preloaded" top websites (FF54+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1211726 ***/
user_pref("browser.urlbar.usepreloadedtopurls.enabled", false);
/* 0850a: disable location bar autocomplete [controlled by 0850b] /* 0850a: disable location bar autocomplete [controlled by 0850b]
// user_pref("browser.urlbar.autocomplete.enabled", false); // user_pref("browser.urlbar.autocomplete.enabled", false);
/* 0850b: disable location bar suggestion types [controls 0850a] /* 0850b: disable location bar suggestion types [controls 0850a]
@ -413,7 +419,7 @@ user_pref("browser.urlbar.suggest.openpage", false);
user_pref("browser.urlbar.autoFill", false); user_pref("browser.urlbar.autoFill", false);
user_pref("browser.urlbar.autoFill.typed", false); user_pref("browser.urlbar.autoFill.typed", false);
/* 0850e: disable location bar one-off searches (FF51+) /* 0850e: disable location bar one-off searches (FF51+)
* [1] http://www.ghacks.net/2016/08/09/firefox-one-off-searches-address-bar/ ***/ * [1] https://www.ghacks.net/2016/08/09/firefox-one-off-searches-address-bar/ ***/
user_pref("browser.urlbar.oneOffSearches", false); user_pref("browser.urlbar.oneOffSearches", false);
/* 0860: disable search and form history /* 0860: disable search and form history
* [SETTING] Options>Privacy>History>Custom Settings>Remember search and form history * [SETTING] Options>Privacy>History>Custom Settings>Remember search and form history
@ -428,6 +434,10 @@ user_pref("browser.urlbar.oneOffSearches", false);
* [SETTING] Options>Privacy>History>Custom Settings>Remember my browsing and download history * [SETTING] Options>Privacy>History>Custom Settings>Remember my browsing and download history
* [NOTE] You can clear history and downloads on exiting Firefox (see 2803) ***/ * [NOTE] You can clear history and downloads on exiting Firefox (see 2803) ***/
// user_pref("places.history.enabled", false); // user_pref("places.history.enabled", false);
/* 0863: disable Form Autofill (FF54+)
* [1] https://www.ghacks.net/2017/05/24/firefoxs-new-form-autofill-is-awesome/
* [2] https://wiki.mozilla.org/Firefox/Features/Form_Autofill ***/
user_pref("browser.formautofill.enabled", false);
/* 0870: disable Windows jumplist [WINDOWS] ***/ /* 0870: disable Windows jumplist [WINDOWS] ***/
user_pref("browser.taskbar.lists.enabled", false); user_pref("browser.taskbar.lists.enabled", false);
user_pref("browser.taskbar.lists.frequent.enabled", false); user_pref("browser.taskbar.lists.frequent.enabled", false);
@ -488,7 +498,8 @@ user_pref("browser.cache.disk.smart_size.first_run", false);
/* 1002: disable disk cache for SSL pages /* 1002: disable disk cache for SSL pages
* [1] http://kb.mozillazine.org/Browser.cache.disk_cache_ssl ***/ * [1] http://kb.mozillazine.org/Browser.cache.disk_cache_ssl ***/
user_pref("browser.cache.disk_cache_ssl", false); user_pref("browser.cache.disk_cache_ssl", false);
/* 1003: disable memory cache ***/ /* 1003: disable memory cache
* [NOTE] Not recommended due to performance issues ***/
// user_pref("browser.cache.memory.enable", false); // user_pref("browser.cache.memory.enable", false);
/* 1004: disable offline cache ***/ /* 1004: disable offline cache ***/
user_pref("browser.cache.offline.enable", false); user_pref("browser.cache.offline.enable", false);
@ -496,9 +507,11 @@ user_pref("browser.cache.offline.enable", false);
* To improve performance when pressing back/forward Firefox stores visited pages * To improve performance when pressing back/forward Firefox stores visited pages
* so they don't have to be re-parsed. This is not the same as memory cache. * so they don't have to be re-parsed. This is not the same as memory cache.
* 0=none, -1=auto (that's minus 1), or for other values see [1] * 0=none, -1=auto (that's minus 1), or for other values see [1]
* [NOTE] Not recommended unless you know what you're doing
* [1] http://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers ***/ * [1] http://kb.mozillazine.org/Browser.sessionhistory.max_total_viewers ***/
// user_pref("browser.sessionhistory.max_total_viewers", 0); // user_pref("browser.sessionhistory.max_total_viewers", 0);
/* 1006: disable permissions manager from writing to disk (requires restart) /* 1006: disable permissions manager from writing to disk (requires restart)
* [NOTE] This means any permission changes are session only
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=967812 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=967812 ***/
// user_pref("permissions.memory_only", true); // (hidden pref) // user_pref("permissions.memory_only", true); // (hidden pref)
/* 1007: disable randomized FF HTTP cache decay experiments /* 1007: disable randomized FF HTTP cache decay experiments
@ -539,7 +552,7 @@ user_pref("browser.shell.shortcutFavicons", false);
// user_pref("browser.chrome.site_icons", false); // user_pref("browser.chrome.site_icons", false);
// user_pref("browser.chrome.favicons", false); // user_pref("browser.chrome.favicons", false);
/* 1032: disable favicons in web notifications ***/ /* 1032: disable favicons in web notifications ***/
// user_pref("alerts.showFavicons", false); user_pref("alerts.showFavicons", false);
/*** 1100: MULTI-PROCESS (e10s) /*** 1100: MULTI-PROCESS (e10s)
We recommend you let Firefox handle this. Until e10s is enforced, if We recommend you let Firefox handle this. Until e10s is enforced, if
@ -554,8 +567,8 @@ user_pref("browser.shell.shortcutFavicons", false);
// user_pref("browser.tabs.remote.autostart.2", true); // (FF49+) (hidden pref) // user_pref("browser.tabs.remote.autostart.2", true); // (FF49+) (hidden pref)
// user_pref("browser.tabs.remote.force-enable", true); // (hidden pref) // user_pref("browser.tabs.remote.force-enable", true); // (hidden pref)
// user_pref("extensions.e10sBlocksEnabling", false); // user_pref("extensions.e10sBlocksEnabling", false);
/* 1102: control number of e10s processes /* 1102: control number of content rendering processes
* [1] http://www.ghacks.net/2016/02/15/change-how-many-processes-multi-process-firefox-uses/ * [1] https://www.ghacks.net/2016/02/15/change-how-many-processes-multi-process-firefox-uses/
* [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1207306 ***/ * [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1207306 ***/
// user_pref("dom.ipc.processCount", 4); // user_pref("dom.ipc.processCount", 4);
/* 1103: enable WebExtension add-on code to run in a separate process (webext-oop) (FF53+) /* 1103: enable WebExtension add-on code to run in a separate process (webext-oop) (FF53+)
@ -563,17 +576,21 @@ user_pref("browser.shell.shortcutFavicons", false);
// user_pref("extensions.webextensions.remote", true); // user_pref("extensions.webextensions.remote", true);
/* 1104: enforce separate content process for file://URLs (FF53+) /* 1104: enforce separate content process for file://URLs (FF53+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1147911 * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1147911
* [2] http://www.ghacks.net/2016/11/27/firefox-53-exclusive-content-process-for-local-files/ ***/ * [2] https://www.ghacks.net/2016/11/27/firefox-53-exclusive-content-process-for-local-files/ ***/
// user_pref("browser.tabs.remote.separateFileUriProcess", true); // user_pref("browser.tabs.remote.separateFileUriProcess", true);
/* 1105: enable console shim warnings for add-ons with the 'multiprocessCompatible' flag as false ***/ /* 1105: enable console shim warnings for add-ons with the 'multiprocessCompatible' flag as false ***/
user_pref("dom.ipc.shims.enabledWarnings", true); user_pref("dom.ipc.shims.enabledWarnings", true);
/* 1106: control number of WebExtension processes ***/
// user_pref("dom.ipc.processCount.extension", 1);
/* 1110: set sandbox level. DO NOT MEDDLE WITH THESE. They are included to inform you NOT to play /* 1110: set sandbox level. DO NOT MEDDLE WITH THESE. They are included to inform you NOT to play
* with them. The values are integers, but the code below deliberately contains a data mismatch * with them. The values are integers, but the code below deliberately contains a data mismatch
* [1] https://wiki.mozilla.org/Sandbox * [1] https://wiki.mozilla.org/Sandbox
* [2] http://www.ghacks.net/2017/01/23/how-to-change-firefoxs-sandbox-security-level/#comment-4105173 ***/ * [2] https://www.ghacks.net/2017/01/23/how-to-change-firefoxs-sandbox-security-level/#comment-4105173 ***/
// user_pref("security.sandbox.content.level", "donotuse"); // user_pref("security.sandbox.content.level", "donotuse");
// user_pref("dom.ipc.plugins.sandbox-level.default", "donotuse"); // user_pref("dom.ipc.plugins.sandbox-level.default", "donotuse");
// user_pref("dom.ipc.plugins.sandbox-level.flash", "donotuse"); // user_pref("dom.ipc.plugins.sandbox-level.flash", "donotuse");
/* 1111: enable sandbox logging ***/
// user_pref("security.sandbox.logging.enabled", true);
/*** 1200: HTTPS ( SSL/TLS / OCSP / CERTS / HSTS / HPKP / CIPHERS ) /*** 1200: HTTPS ( SSL/TLS / OCSP / CERTS / HSTS / HPKP / CIPHERS )
Note that your cipher and other settings can be used server side as a fingerprint attack Note that your cipher and other settings can be used server side as a fingerprint attack
@ -598,12 +615,15 @@ user_pref("ghacks_user.js.parrot", "1200 syntax error: the parrot's a stiff!");
// user_pref("security.ssl.require_safe_negotiation", true); // user_pref("security.ssl.require_safe_negotiation", true);
/* 1202: control TLS versions with min and max /* 1202: control TLS versions with min and max
* 1=min version of TLS 1.0, 2=min version of TLS 1.1, 3=min version of TLS 1.2 etc * 1=min version of TLS 1.0, 2=min version of TLS 1.1, 3=min version of TLS 1.2 etc
* [WARNING] Firefox and Chrome currently allow TLS 1.0 by default, so this is your call. * [NOTE] Jul-2017: Telemetry indicates approx 2% of TLS web traffic uses 1.0 or 1.1
* [WARNING] If you get an "SSL_ERROR_NO_CYPHER_OVERLAP" error temporarily
* set a lower value for 'security.tls.version.min' in about:config
* [1] http://kb.mozillazine.org/Security.tls.version.* * [1] http://kb.mozillazine.org/Security.tls.version.*
* [2] https://www.ssl.com/how-to/turn-off-ssl-3-0-and-tls-1-0-in-your-browser/ ***/ * [2] https://www.ssl.com/how-to/turn-off-ssl-3-0-and-tls-1-0-in-your-browser/
// user_pref("security.tls.version.min", 2); * [2] archived: https://archive.is/hY2Mm ***/
// user_pref("security.tls.version.fallback-limit", 3); user_pref("security.tls.version.min", 3);
// user_pref("security.tls.version.max", 4); // 4 = allow up to and including TLS 1.3 user_pref("security.tls.version.fallback-limit", 3);
user_pref("security.tls.version.max", 4); // 4 = allow up to and including TLS 1.3
/* 1203: disable SSL session tracking (FF36+) /* 1203: disable SSL session tracking (FF36+)
* SSL Session IDs speed up HTTPS connections (no need to renegotiate) and last for 48hrs. * SSL Session IDs speed up HTTPS connections (no need to renegotiate) and last for 48hrs.
* Since the ID is unique, web servers can (and do) use it for tracking. If set to true, * Since the ID is unique, web servers can (and do) use it for tracking. If set to true,
@ -616,7 +636,8 @@ user_pref("security.ssl.disable_session_identifiers", true); // (hidden pref)
user_pref("security.ssl.errorReporting.automatic", false); user_pref("security.ssl.errorReporting.automatic", false);
user_pref("security.ssl.errorReporting.enabled", false); user_pref("security.ssl.errorReporting.enabled", false);
user_pref("security.ssl.errorReporting.url", ""); user_pref("security.ssl.errorReporting.url", "");
/** OCSP (Online Certificate Status Protocol) ***/ /** OCSP (Online Certificate Status Protocol)
#Required reading [#] https://scotthelme.co.uk/revocation-is-broken/ ***/
/* 1210: enable OCSP Stapling /* 1210: enable OCSP Stapling
* [1] https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/ ***/ * [1] https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/ ***/
user_pref("security.ssl.enable_ocsp_stapling", true); user_pref("security.ssl.enable_ocsp_stapling", true);
@ -629,15 +650,15 @@ user_pref("security.ssl.enable_ocsp_stapling", true);
user_pref("security.OCSP.enabled", 1); user_pref("security.OCSP.enabled", 1);
/* 1212: enable OCSP revocation. When a CA cannot be reached to validate a cert, Firefox currently /* 1212: enable OCSP revocation. When a CA cannot be reached to validate a cert, Firefox currently
* continues the connection. With OCSP revocation, Firefox terminates the connection instead. * continues the connection. With OCSP revocation, Firefox terminates the connection instead.
* [WARNING] Since FF44 the default is false. If set to true, this may/will cause some * [WARNING] Since FF44 the default is false. If set to true, this will cause some site breakage
* site breakage. Some users have previously mentioned issues with youtube, microsoft etc
* [1] https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/ ***/ * [1] https://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/ ***/
// user_pref("security.OCSP.require", true); user_pref("security.OCSP.require", true);
/** CERTS / HSTS (HTTP Strict Transport Security) / HPKP (HTTP Public Key Pinning) ***/ /** CERTS / HSTS (HTTP Strict Transport Security) / HPKP (HTTP Public Key Pinning) ***/
/* 1220: disable Windows 8.1's Microsoft Family Safety cert [WINDOWS] (FF50+) /* 1220: disable Windows 8.1's Microsoft Family Safety cert [WINDOWS] (FF50+)
* 0=disable detecting Family Safety mode and importing the root * 0=disable detecting Family Safety mode and importing the root
* 1=only attempt to detect Family Safety mode (don't import the root) * 1=only attempt to detect Family Safety mode (don't import the root)
* 2=detect Family Safety mode and import the root ***/ * 2=detect Family Safety mode and import the root
* [1] https://trac.torproject.org/projects/tor/ticket/21686 ***/
user_pref("security.family_safety.mode", 0); user_pref("security.family_safety.mode", 0);
/* 1221: disable intermediate certificate caching (fingerprinting attack vector) /* 1221: disable intermediate certificate caching (fingerprinting attack vector)
* [NOTE] This may be better handled under FPI (ticket 1323644, part of Tor Uplift) * [NOTE] This may be better handled under FPI (ticket 1323644, part of Tor Uplift)
@ -659,7 +680,8 @@ user_pref("security.cert_pinning.enforcement_level", 2);
* [2] https://wiki.mozilla.org/Privacy/Features/HSTS_Preload_List ***/ * [2] https://wiki.mozilla.org/Privacy/Features/HSTS_Preload_List ***/
user_pref("network.stricttransportsecurity.preloadlist", true); user_pref("network.stricttransportsecurity.preloadlist", true);
/** MIXED CONTENT ***/ /** MIXED CONTENT ***/
/* 1240: disable insecure active content on https pages - mixed content ***/ /* 1240: disable insecure active content on https pages - mixed content
* [1] https://trac.torproject.org/projects/tor/ticket/21323 ***/
user_pref("security.mixed_content.block_active_content", true); user_pref("security.mixed_content.block_active_content", true);
/* 1241: disable insecure passive content (such as images) on https pages - mixed context /* 1241: disable insecure passive content (such as images) on https pages - mixed context
* [WARNING] When set to true, this will visually break many sites (March 2017) ***/ * [WARNING] When set to true, this will visually break many sites (March 2017) ***/
@ -748,7 +770,8 @@ user_pref("layout.css.font-loading-api.enabled", false);
* [1] http://kb.mozillazine.org/Font.blacklist.underline_offset ***/ * [1] http://kb.mozillazine.org/Font.blacklist.underline_offset ***/
user_pref("font.blacklist.underline_offset", ""); user_pref("font.blacklist.underline_offset", "");
/* 1408: disable graphite which FF49 turned back on by default /* 1408: disable graphite which FF49 turned back on by default
* In the past it had security issues - need citation ***/ * In the past it had security issues. Update: This continues to be the case, see [1]
* [1] https://www.mozilla.org/en-US/security/advisories/mfsa2017-15/#CVE-2017-7778 ***/
user_pref("gfx.font_rendering.graphite.enabled", false); user_pref("gfx.font_rendering.graphite.enabled", false);
/* 1409: limit system font exposure to a whitelist (FF52+) [SETUP] /* 1409: limit system font exposure to a whitelist (FF52+) [SETUP]
* If the whitelist is empty, then whitelisting is considered disabled and all fonts are allowed. * If the whitelist is empty, then whitelisting is considered disabled and all fonts are allowed.
@ -801,14 +824,18 @@ user_pref("network.http.referer.spoofSource", false);
* [NOTE] This is only a default, it can be overridden by a site-controlled Referrer Policy * [NOTE] This is only a default, it can be overridden by a site-controlled Referrer Policy
* [1] https://www.w3.org/TR/referrer-policy/ * [1] https://www.w3.org/TR/referrer-policy/
* [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1304623 ***/ * [2] https://bugzilla.mozilla.org/show_bug.cgi?id=1304623 ***/
// user_pref("network.http.referer.userControlPolicy", 3); user_pref("network.http.referer.userControlPolicy", 3);
/* 1607: TOR: hide (not spoof) referrer when leaving a .onion domain (FF54+) /* 1607: TOR: hide (not spoof) referrer when leaving a .onion domain (FF54+)
* [NOTE] Firefox cannot access .onion sites by default. We recommend you use * [NOTE] Firefox cannot access .onion sites by default. We recommend you use
* TBB (Tor Browser Bundle) which is specifically designed for the dark web * TBB (Tor Browser Bundle) which is specifically designed for the dark web
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1305144 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1305144 ***/
user_pref("network.http.referer.hideOnionSource", true); user_pref("network.http.referer.hideOnionSource", true);
/* 1610: ALL: disable the DNT HTTP header (this is essentially USELESS and raises entropy) /* 1610: ALL: disable the DNT HTTP header, which is essentially USELESS
* [SETTING] Options>Privacy>Tracking>Request that sites not track you * It is voluntary and most ad networks do not honor it. DNT is *NOT* how you stop being data mined.
* Don't encourage a setting that gives any legitimacy to 3rd parties being in control of your privacy.
* Sending a DNT header *highly likely* raises entropy, especially in standard windows.
* [SETTING] Options>Privacy>Use Tracking Protecting>manage your Do Not Track settings
* [NOTE] DNT is enforced with TP (see 0420) regardless of this pref (eg in default PB Mode)
* [NOTE] If you use NoScript MAKE SURE to set the pref noscript.doNotTrack.enabled to match ***/ * [NOTE] If you use NoScript MAKE SURE to set the pref noscript.doNotTrack.enabled to match ***/
user_pref("privacy.donottrackheader.enabled", false); user_pref("privacy.donottrackheader.enabled", false);
@ -845,7 +872,7 @@ user_pref("plugin.sessionPermissionNow.intervalInMinutes", 0);
/* 1803: set a plugin state: 0=deactivated 1=ask 2=enabled (Flash example) /* 1803: set a plugin state: 0=deactivated 1=ask 2=enabled (Flash example)
* you can set all these plugin.state's via Add-ons>Plugins or search for plugin.state in about:config * you can set all these plugin.state's via Add-ons>Plugins or search for plugin.state in about:config
* [NOTE] You can still over-ride individual sites eg youtube via site permissions * [NOTE] You can still over-ride individual sites eg youtube via site permissions
* [1] http://www.ghacks.net/2013/07/09/how-to-make-sure-that-a-firefox-plugin-never-activates-again/ ***/ * [1] https://www.ghacks.net/2013/07/09/how-to-make-sure-that-a-firefox-plugin-never-activates-again/ ***/
// user_pref("plugin.state.flash", 0); // user_pref("plugin.state.flash", 0);
/* 1804: disable plugins using external/untrusted scripts with XPCOM or XPConnect ***/ /* 1804: disable plugins using external/untrusted scripts with XPCOM or XPConnect ***/
user_pref("security.xpconnect.plugin.unrestricted", false); user_pref("security.xpconnect.plugin.unrestricted", false);
@ -865,7 +892,6 @@ user_pref("media.gmp-widevinecdm.autoupdate", false);
/* 1830: disable all DRM content (EME: Encryption Media Extension) [SETUP] ***/ /* 1830: disable all DRM content (EME: Encryption Media Extension) [SETUP] ***/
user_pref("media.eme.enabled", false); // Options>Content>Play DRM Content user_pref("media.eme.enabled", false); // Options>Content>Play DRM Content
user_pref("browser.eme.ui.enabled", false); // hides "Play DRM Content" checkbox, restart required user_pref("browser.eme.ui.enabled", false); // hides "Play DRM Content" checkbox, restart required
user_pref("media.eme.apiVisible", false); // block websites detecting DRM is disabled
/* 1840: disable the OpenH264 Video Codec by Cisco to "Never Activate" /* 1840: disable the OpenH264 Video Codec by Cisco to "Never Activate"
* and disable pings to the external update/download server * and disable pings to the external update/download server
* This is the bundled codec used for video chat in WebRTC ***/ * This is the bundled codec used for video chat in WebRTC ***/
@ -876,13 +902,14 @@ user_pref("media.gmp-manager.url", "data:text/plain,");
/*** 2000: MEDIA / CAMERA / MIC ***/ /*** 2000: MEDIA / CAMERA / MIC ***/
user_pref("ghacks_user.js.parrot", "2000 syntax error: the parrot's snuffed it!"); user_pref("ghacks_user.js.parrot", "2000 syntax error: the parrot's snuffed it!");
/* 2001: disable WebRTC (Web Real-Time Communication) /* 2001: disable WebRTC (Web Real-Time Communication)
* [1] https://www.privacytools.io/#webrtc ***/ * [1] https://privacytoolsio.github.io/privacytools.io/#webrtc ***/
user_pref("media.peerconnection.enabled", false); user_pref("media.peerconnection.enabled", false);
user_pref("media.peerconnection.use_document_iceservers", false); user_pref("media.peerconnection.use_document_iceservers", false);
user_pref("media.peerconnection.video.enabled", false); user_pref("media.peerconnection.video.enabled", false);
user_pref("media.peerconnection.identity.enabled", false); user_pref("media.peerconnection.identity.enabled", false);
user_pref("media.peerconnection.identity.timeout", 1); user_pref("media.peerconnection.identity.timeout", 1);
user_pref("media.peerconnection.turn.disable", true); user_pref("media.peerconnection.turn.disable", true);
user_pref("media.peerconnection.ice.tcp", false);
user_pref("media.navigator.video.enabled", false); // video capability for WebRTC user_pref("media.navigator.video.enabled", false); // video capability for WebRTC
/* 2002: limit WebRTC IP leaks if using WebRTC /* 2002: limit WebRTC IP leaks if using WebRTC
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1189041 * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1189041
@ -919,7 +946,7 @@ user_pref("media.getusermedia.audiocapture.enabled", false);
/* 2023: disable camera stuff ***/ /* 2023: disable camera stuff ***/
user_pref("camera.control.face_detection.enabled", false); user_pref("camera.control.face_detection.enabled", false);
/* 2024: enable/disable MSE (Media Source Extensions) /* 2024: enable/disable MSE (Media Source Extensions)
* [1] http://www.ghacks.net/2014/05/10/enable-media-source-extensions-firefox/ ***/ * [1] https://www.ghacks.net/2014/05/10/enable-media-source-extensions-firefox/ ***/
user_pref("media.mediasource.enabled", true); user_pref("media.mediasource.enabled", true);
user_pref("media.mediasource.mp4.enabled", true); user_pref("media.mediasource.mp4.enabled", true);
user_pref("media.mediasource.webm.audio.enabled", true); user_pref("media.mediasource.webm.audio.enabled", true);
@ -937,7 +964,7 @@ user_pref("gfx.offscreencanvas.enabled", false);
* [WARNING] This may break video playback on various sites ***/ * [WARNING] This may break video playback on various sites ***/
user_pref("media.autoplay.enabled", false); user_pref("media.autoplay.enabled", false);
/* 2031: disable audio auto-play in non-active tabs (FF51+) /* 2031: disable audio auto-play in non-active tabs (FF51+)
* [1] http://www.ghacks.net/2016/11/14/firefox-51-blocks-automatic-audio-playback-in-non-active-tabs/ ***/ * [1] https://www.ghacks.net/2016/11/14/firefox-51-blocks-automatic-audio-playback-in-non-active-tabs/ ***/
user_pref("media.block-autoplay-until-in-foreground", true); user_pref("media.block-autoplay-until-in-foreground", true);
/*** 2200: UI MEDDLING /*** 2200: UI MEDDLING
@ -974,33 +1001,48 @@ user_pref("browser.link.open_newwindow.restriction", 0);
* [2] https://support.mozilla.org/en-US/questions/1043508 ***/ * [2] https://support.mozilla.org/en-US/questions/1043508 ***/
user_pref("dom.disable_beforeunload", true); user_pref("dom.disable_beforeunload", true);
/*** 2300: SERVICE WORKERS ***/ /*** 2300: WEB WORKERS [SETUP]
A worker is a JS "background task" running in a global context, i.e it is different from
the current window. Workers can spawn new workers (must be the same origin & scheme),
including service and shared workers. Shared workers can be utilized by multiple scripts
and communicate between browsing contexts (windows/tabs/iframes) and can even control your
cache. Push and web notifications require service workers, which in turn require workers.
[WARNING] Disabling workers *will* break sites (eg Google Street View, Twitter).
It is recommended that you use a separate profile for these sorts of sites.
[1] Web Workers: https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API
[2] Worker: https://developer.mozilla.org/en-US/docs/Web/API/Worker
[3] Service Worker: https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API
[4] SharedWorker: https://developer.mozilla.org/en-US/docs/Web/API/SharedWorker
[5] ChromeWorker: https://developer.mozilla.org/en-US/docs/Web/API/ChromeWorker
***/
user_pref("ghacks_user.js.parrot", "2300 syntax error: the parrot's off the twig!"); user_pref("ghacks_user.js.parrot", "2300 syntax error: the parrot's off the twig!");
/* 2301: disable workers API and service workers API /* 2301: disable workers
* [NOTE] CVE-2016-5259, CVE-2016-2812, CVE-2016-1949, CVE-2016-5287 (fixed) * [NOTE] CVE-2016-5259, CVE-2016-2812, CVE-2016-1949, CVE-2016-5287 (fixed) ***/
* [WARNING] Will break sites especially workers eg Google Street View
* [1] https://developer.mozilla.org/en-US/docs/Web/API/Worker
* [2] https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker_API
* [3] http://www.ghacks.net/2016/03/02/manage-service-workers-in-firefox-and-chrome/ ***/
user_pref("dom.workers.enabled", false); user_pref("dom.workers.enabled", false);
/* 2302: disable service workers
* Service workers essentially act as proxy servers that sit between web apps, and the browser
* and network, are event driven, and can control the web page/site it is associated with,
* intercepting and modifying navigation and resource requests, and caching resources.
* [NOTE] Service worker APIs are hidden (in Firefox) and cannot be used when in PB mode.
* [NOTE] Service workers only run over HTTPS. Service Workers have no DOM access. ***/
user_pref("dom.serviceWorkers.enabled", false); user_pref("dom.serviceWorkers.enabled", false);
/* 2302: disable service workers cache and cache storage ***/ /* 2303: disable service workers' cache and cache storage ***/
user_pref("dom.caches.enabled", false); user_pref("dom.caches.enabled", false);
/* 2303: disable push notifications (FF44+) [requires serviceWorkers to be enabled] /* 2304: disable web notifications
* [NOTE] You can still override individual domains under site permissions (FF44+)
* [1] https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API ***/
user_pref("dom.webnotifications.enabled", false);
user_pref("dom.webnotifications.serviceworker.enabled", false);
/* 2305: disable push notifications (FF44+)
* web apps can receive messages pushed to them from a server, whether or * web apps can receive messages pushed to them from a server, whether or
* not the web app is in the foreground, or even currently loaded * not the web app is in the foreground, or even currently loaded
* [WARNING] May affect social media sites like Twitter
* [1] https://developer.mozilla.org/en/docs/Web/API/Push_API ***/ * [1] https://developer.mozilla.org/en/docs/Web/API/Push_API ***/
user_pref("dom.push.enabled", false); user_pref("dom.push.enabled", false);
user_pref("dom.push.connection.enabled", false); user_pref("dom.push.connection.enabled", false);
user_pref("dom.push.serverURL", ""); user_pref("dom.push.serverURL", "");
user_pref("dom.push.userAgentID", ""); user_pref("dom.push.userAgentID", "");
/* 2304: disable web/push notifications
* [NOTE] You can still override individual domains under site permissions (FF44+)
* [WARNING] May affect social media sites like Twitter
* [1] https://developer.mozilla.org/en-US/docs/Web/API/notification ***/
user_pref("dom.webnotifications.enabled", false);
user_pref("dom.webnotifications.serviceworker.enabled", false);
/*** 2400: DOM & JAVASCRIPT ***/ /*** 2400: DOM & JAVASCRIPT ***/
user_pref("ghacks_user.js.parrot", "2400 syntax error: the parrot's kicked the bucket!"); user_pref("ghacks_user.js.parrot", "2400 syntax error: the parrot's kicked the bucket!");
@ -1008,7 +1050,7 @@ user_pref("ghacks_user.js.parrot", "2400 syntax error: the parrot's kicked the b
* [WARNING] This will break some sites functionality such as pasting into facebook, wordpress * [WARNING] This will break some sites functionality such as pasting into facebook, wordpress
* this applies to onCut, onCopy, onPaste events - i.e you have to interact with * this applies to onCut, onCopy, onPaste events - i.e you have to interact with
* the website for it to look at the clipboard * the website for it to look at the clipboard
* [1] http://www.ghacks.net/2014/01/08/block-websites-reading-modifying-clipboard-contents-firefox/ ***/ * [1] https://www.ghacks.net/2014/01/08/block-websites-reading-modifying-clipboard-contents-firefox/ ***/
user_pref("dom.event.clipboardevents.enabled", false); user_pref("dom.event.clipboardevents.enabled", false);
/* 2403: disable clipboard commands (cut/copy) from "non-privileged" content (FF41+) /* 2403: disable clipboard commands (cut/copy) from "non-privileged" content (FF41+)
* this disables document.execCommand("cut"/"copy") to protect your clipboard * this disables document.execCommand("cut"/"copy") to protect your clipboard
@ -1059,9 +1101,6 @@ user_pref("javascript.options.asmjs", false);
/* 2422: disable WebAssembly for now (FF52+) /* 2422: disable WebAssembly for now (FF52+)
* [1] https://developer.mozilla.org/en-US/docs/WebAssembly ***/ * [1] https://developer.mozilla.org/en-US/docs/WebAssembly ***/
user_pref("javascript.options.wasm", false); user_pref("javascript.options.wasm", false);
/* 2425: disable ArchiveAPI i.e reading content of archives, such as zip files, directly
* in the browser, through DOM file objects. Default is false. ***/
user_pref("dom.archivereader.enabled", false);
/* 2426: disable Intersection Observer API (FF53+) /* 2426: disable Intersection Observer API (FF53+)
* Almost a year to complete, three versions late to stable (as default false), * Almost a year to complete, three versions late to stable (as default false),
* number #1 cause of crashes in nightly numerous times, and is (primarily) an * number #1 cause of crashes in nightly numerous times, and is (primarily) an
@ -1087,7 +1126,7 @@ user_pref("ghacks_user.js.parrot", "2500 syntax error: the parrot's shuffled off
/* 2501: disable gamepad API - USB device ID enumeration /* 2501: disable gamepad API - USB device ID enumeration
* [1] https://trac.torproject.org/projects/tor/ticket/13023 ***/ * [1] https://trac.torproject.org/projects/tor/ticket/13023 ***/
user_pref("dom.gamepad.enabled", false); user_pref("dom.gamepad.enabled", false);
/* 2503: disable giving away network info /* 2503: disable giving away network info (FF31+)
* eg bluetooth, cellular, ethernet, wifi, wimax, other, mixed, unknown, none * eg bluetooth, cellular, ethernet, wifi, wimax, other, mixed, unknown, none
* [1] https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API * [1] https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API
* [2] https://wicg.github.io/netinfo/ * [2] https://wicg.github.io/netinfo/
@ -1104,7 +1143,7 @@ user_pref("dom.vr.openvr.enabled", false); // (FF51+)
* [1] https://wiki.mozilla.org/Media/getUserMedia * [1] https://wiki.mozilla.org/Media/getUserMedia
* [2] https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/enumerateDevices ***/ * [2] https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/enumerateDevices ***/
user_pref("media.navigator.enabled", false); user_pref("media.navigator.enabled", false);
/* 2506: disable video statistics - JS performance fingerprinting /* 2506: disable video statistics - JS performance fingerprinting (FF25+)
* [1] https://trac.torproject.org/projects/tor/ticket/15757 ***/ * [1] https://trac.torproject.org/projects/tor/ticket/15757 ***/
user_pref("media.video_stats.enabled", false); user_pref("media.video_stats.enabled", false);
/* 2507: disable keyboard fingerprinting (FF38+) (physical keyboards) /* 2507: disable keyboard fingerprinting (FF38+) (physical keyboards)
@ -1159,6 +1198,11 @@ user_pref("dom.presentation.session_transport.data_channel.enable", false);
* [3] https://trac.torproject.org/projects/tor/ticket/22127 * [3] https://trac.torproject.org/projects/tor/ticket/22127
* [4] https://html.spec.whatwg.org/multipage/workers.html#navigator.hardwareconcurrency ***/ * [4] https://html.spec.whatwg.org/multipage/workers.html#navigator.hardwareconcurrency ***/
// user_pref("dom.maxHardwareConcurrency", 2); // user_pref("dom.maxHardwareConcurrency", 2);
/* 2515: disable site specific zoom
* Zoom levels affect screen res and are highly fingerprintable. This does not stop you using
* zoom, it will just not use/remember any site specific settings. Zoom levels on new tabs
* and new windows are reset to default and only the current tab retains the current zoom ***/
user_pref("browser.zoom.siteSpecific", false);
/*** 2600: MISC - LEAKS / FINGERPRINTING / PRIVACY / SECURITY ***/ /*** 2600: MISC - LEAKS / FINGERPRINTING / PRIVACY / SECURITY ***/
user_pref("ghacks_user.js.parrot", "2600 syntax error: the parrot's run down the curtain!"); user_pref("ghacks_user.js.parrot", "2600 syntax error: the parrot's run down the curtain!");
@ -1267,8 +1311,8 @@ user_pref("general.useragent.compatMode.firefox", false);
/* 2628: disable UITour backend so there is no chance that a remote page can use it ***/ /* 2628: disable UITour backend so there is no chance that a remote page can use it ***/
user_pref("browser.uitour.enabled", false); user_pref("browser.uitour.enabled", false);
user_pref("browser.uitour.url", ""); user_pref("browser.uitour.url", "");
/* 2629: disable remote JAR files being opened, regardless of content type /* 2629: disable remote JAR files being opened, regardless of content type (FF42+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1215235 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1173171 ***/
user_pref("network.jar.block-remote-files", true); user_pref("network.jar.block-remote-files", true);
/* 2662: disable "open with" in download dialog (FF50+) /* 2662: disable "open with" in download dialog (FF50+)
* This is very useful to enable when the browser is sandboxed (e.g. via AppArmor) * This is very useful to enable when the browser is sandboxed (e.g. via AppArmor)
@ -1286,7 +1330,7 @@ user_pref("device.storage.enabled", false);
/* 2665: remove webchannel whitelist ***/ /* 2665: remove webchannel whitelist ***/
user_pref("webchannel.allowObject.urlWhitelist", ""); user_pref("webchannel.allowObject.urlWhitelist", "");
/* 2666: disable HTTP Alternative Services /* 2666: disable HTTP Alternative Services
* [1] http://www.ghacks.net/2015/08/18/a-comprehensive-list-of-firefox-privacy-and-security-settings/#comment-3970881 ***/ * [1] https://www.ghacks.net/2015/08/18/a-comprehensive-list-of-firefox-privacy-and-security-settings/#comment-3970881 ***/
user_pref("network.http.altsvc.enabled", false); user_pref("network.http.altsvc.enabled", false);
user_pref("network.http.altsvc.oe", false); user_pref("network.http.altsvc.oe", false);
/* 2667: disable various developer tools in browser context /* 2667: disable various developer tools in browser context
@ -1296,7 +1340,7 @@ user_pref("devtools.chrome.enabled", false);
/* 2668: lock down allowed extension directories /* 2668: lock down allowed extension directories
* [WARNING] This will break add-ons that do not use the default XPI directories * [WARNING] This will break add-ons that do not use the default XPI directories
* [1] https://mike.kaply.com/2012/02/21/understanding-add-on-scopes/ * [1] https://mike.kaply.com/2012/02/21/understanding-add-on-scopes/
* [2] archived: http://archive.is/DYjAM ***/ * [1] archived: http://archive.is/DYjAM ***/
user_pref("extensions.enabledScopes", 1); // (hidden pref) user_pref("extensions.enabledScopes", 1); // (hidden pref)
user_pref("extensions.autoDisableScopes", 15); user_pref("extensions.autoDisableScopes", 15);
/* 2669: remove paths when sending URLs to PAC scripts (FF51+) /* 2669: remove paths when sending URLs to PAC scripts (FF51+)
@ -1359,69 +1403,95 @@ user_pref("security.csp.experimentalEnabled", true);
// user_pref("general.oscpu.override", "Windows NT 6.1"); // (hidden pref) // user_pref("general.oscpu.override", "Windows NT 6.1"); // (hidden pref)
/* 2697g: general.useragent.locale (related, see 0204) ***/ /* 2697g: general.useragent.locale (related, see 0204) ***/
/*** 2698: FIRST PARTY ISOLATION (FPI) ***/ /*** 2698: FIRST PARTY ISOLATION (FPI)
/* 2698a: enable first party isolation pref and OriginAttribute (FF51+) ** isolate favicons (FF52+)
* [WARNING] Breaks lots of cross-domain logins and site functionality until perfected [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1277803
** isolate OCSP cache (FF52+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1264562
** isolate Shared Workers (FF52+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1268726
** isolate SSL session cache (FF52+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1316283
** isolate media cache (FF53+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1317927
** isolate HSTS and HPKP (FF54+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1323644
** isolate HTTP Alternative Services (FF54+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1334690
** isolate SPDY/HTTP2 (FF55+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1334693
** isolate DNS cache (FF55+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1337893
** isolate blob: URI (FF55+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1344170
** isolate data://, about: URLs (FF55+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1300671
***/
/* 2698a: enable First Party Isolation (FF51+)
* [WARNING] May break cross-domain logins and site functionality until perfected
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1260931 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1260931 ***/
/* 2698b: isolate favicons (FF52+) user_pref("privacy.firstparty.isolate", true);
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1277803 ***/ /* 2698b: enforce FPI restriction for window.opener (FF54+)
/* 2698c: isolate OCSP cache (FF52+) * [NOTE] Setting this to false may reduce the breakage in 2698a
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1264562 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1319773#c22 ***/
/* 2698d: isolate Shared Workers (FF52+) user_pref("privacy.firstparty.isolate.restrict_opener_access", true);
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1268726 ***/
/* 2698e: isolate SSL session cache (FF52+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1316283 ***/
/* 2698f: isolate media cache (FF53+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1317927 ***/
/* 2698g: isolate HSTS and HPKP (FF54+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1323644 ***/
/* 2698h: isolate HTTP Alternative Services (FF54+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1334690 ***/
/* 2698i: isolate SPDY/HTTP2 (FF55+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1334693 ***/
/* 2698j: isolate DNS cache (FF55+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1337893 ***/
/* 2698k: isolate blob: URI (FF55+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1344170 ***/
// user_pref("privacy.firstparty.isolate", true);
// user_pref("privacy.firstparty.isolate.restrict_opener_access", true); // (FF54+)
/*** 2699: TOR UPLIFT: privacy.resistFingerprinting /*** 2699: privacy.resistFingerprinting
This preference will be used as a generic switch for a wide range of items. This master switch will be used for a wide range of items,
This section will attempt to list all the ramifications and Mozilla tickets ***/ many of which will **override** existing prefs from FF55+
/* 2699a: limit window.screen & CSS media queries providing large amounts of identifiable info. ** limit window.screen & CSS media queries leaking identifiable info (FF41+)
* POC: http://ip-check.info/?lang=en (screen, usable screen, and browser window will match) [POC] http://ip-check.info/?lang=en (screen, usable screen, and browser window will match)
* [NOTE] Does not cover everything yet - https://bugzilla.mozilla.org/show_bug.cgi?id=1216800 [NOTE] Does not cover everything yet - https://bugzilla.mozilla.org/show_bug.cgi?id=1216800
* [NOTE] This will probably make your values pretty unique until you resize or snap the [NOTE] This will probably make your values pretty unique until you resize or snap the
* inner window width + height into standard/common resolutions (mine is at 1366x768) inner window width + height into standard/common resolutions (such as 1366x768)
* To set a size, open a XUL (chrome) page (such as about:config) which is at 100% zoom, hit To set a size, open a XUL (chrome) page (such as about:config) which is at 100% zoom, hit
* Shift+F4 to open the scratchpad, type window.resizeTo(1366,768), hit Ctrl+R to run. Test Shift+F4 to open the scratchpad, type window.resizeTo(1366,768), hit Ctrl+R to run. Test
* your window size, do some math, resize to allow for all the non inner window elements your window size, do some math, resize to allow for all the non inner window elements
* [TEST] http://browserspy.dk/screen.php [TEST] http://browserspy.dk/screen.php
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=418986
** spoof screen orientation (FF50+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1281949
** hide the contents of navigator.plugins and navigator.mimeTypes (FF50+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1281963
** spoof timezone as UTC 0 (FF55+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1330890
** spoof navigator.hardwareConcurrency as 2 (also see 2514) (FF55+)
This spoof *shouldn't* affect core chrome/Firefox performance
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1360039
** reduce precision of time exposed by javascript (FF55+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1217238
** spoof/disable performance API (see 2410-deprecated, 2411, 2412) (FF56+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1369303
** spoof Navigator API (see section 2697) (FF56+)
The version number will be rounded to the "nearest" multiple of 10
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1333651
** disable device sensor API (see 2512) (FF56+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1369319
** disable site specific zoom (see 2515) (FF56+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1369357
** disable gamepad API (see 2501) (FF56+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1337161
** spoof network information API as "unknown" (see 2503) (FF56+)
[1] https://bugzilla.mozilla.org/show_bug.cgi?id=1372072
***/
/* 2699a: enable privacy.resistFingerprinting (FF41+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=418986 ***/ * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=418986 ***/
/* 2699b: spoof screen orientation user_pref("privacy.resistFingerprinting", true); // (hidden pref) (not hidden FF55+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1281949 ***/ /* 2699b: set new window sizes to round to hundreds (FF55+) [SETUP]
/* 2699c: hide the contents of navigator.plugins and navigator.mimeTypes (FF50+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1281963 ***/
/* 2699d: set new window sizes to round to hundreds (FF55+) [SETUP]
* [NOTE] If override values are too big, the code determines it for you * [NOTE] If override values are too big, the code determines it for you
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1330882 * [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1330882
* [2] https://metrics.mozilla.com/firefox-hardware-report/ ***/ * [2] https://metrics.mozilla.com/firefox-hardware-report/ ***/
// user_pref("privacy.window.maxInnerWidth", 1366); // user_pref("privacy.window.maxInnerWidth", 1366);
// user_pref("privacy.window.maxInnerHeight", 768); // user_pref("privacy.window.maxInnerHeight", 768);
/* 2699e: spoof timezone as UTC 0 (FF55+)
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1330890 ***/
/* 2699f: spoof navigator.hardwareConcurrency as 2 (also see 2514) (FF55+)
* This spoof *shouldn't* affect core chrome/Firefox performance
* [1] https://bugzilla.mozilla.org/show_bug.cgi?id=1360039 ***/
user_pref("privacy.resistFingerprinting", true); // (hidden pref)
/*** 2700: COOKIES & DOM STORAGE ***/ /*** 2700: COOKIES & DOM STORAGE ***/
user_pref("ghacks_user.js.parrot", "2700 syntax error: the parrot's joined the bleedin' choir invisible!"); user_pref("ghacks_user.js.parrot", "2700 syntax error: the parrot's joined the bleedin' choir invisible!");
/* 2701: disable cookies on all sites [SETUP] /* 2701: disable cookies on all sites [SETUP]
* You can set exceptions under site permissions or use an extension (eg Cookie Controller) * You can set exceptions under site permissions or use an extension (eg Cookie Controller)
* 0=allow all 1=allow same host 2=disallow all 3=allow 3rd party if it already set a cookie * 0=allow all 1=allow same host 2=disallow all 3=allow 3rd party if it already set a cookie
* [SETTING] Options>Privacy>History>Custom Settings>Accept cookies from sites ***/ * [SETTING] Options>Privacy>History>Custom Settings>Accept cookies from sites
* [NOTE] This also controls access to 3rd party Web Storage, IndexedDB, Cache API and Service Worker Cache
* [1] https://www.fxsitecompat.com/en-CA/docs/2015/web-storage-indexeddb-cache-api-now-obey-third-party-cookies-preference/ ***/
user_pref("network.cookie.cookieBehavior", 2); user_pref("network.cookie.cookieBehavior", 2);
/* 2702: set third-party cookies (if enabled, see above pref) to session-only /* 2702: set third-party cookies (if enabled, see above pref) to session-only
* [1] https://feeding.cloud.geek.nz/posts/tweaking-cookies-for-privacy-in-firefox/ * [1] https://feeding.cloud.geek.nz/posts/tweaking-cookies-for-privacy-in-firefox/
@ -1493,10 +1563,11 @@ user_pref("privacy.cpd.offlineApps", true); // Offline Website Data
user_pref("privacy.cpd.passwords", false); // this is not listed user_pref("privacy.cpd.passwords", false); // this is not listed
user_pref("privacy.cpd.sessions", true); // Active Logins user_pref("privacy.cpd.sessions", true); // Active Logins
user_pref("privacy.cpd.siteSettings", false); // Site Preferences user_pref("privacy.cpd.siteSettings", false); // Site Preferences
/* 2805: privacy.*.openWindows (FF34+) /* 2805: privacy.*.openWindows (clear session restore data) (FF34+)
* We don't know what they do because we don't care what they do ***/ * [NOTE] There is a years-old bug that these cause two windows when Firefox restarts.
user_pref("privacy.clearOnShutdown.openWindows", false); * You do not need these anyway if session restore is disabled (see 1020) ***/
user_pref("privacy.cpd.openWindows", false); // user_pref("privacy.clearOnShutdown.openWindows", true);
// user_pref("privacy.cpd.openWindows", true);
/* 2806: reset default 'Time range to clear' for 'Clear Recent History' (see 2804) /* 2806: reset default 'Time range to clear' for 'Clear Recent History' (see 2804)
* Firefox remembers your last choice. This will reset the value when you start Firefox. * 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 * 0=everything, 1=last hour, 2=last two hours, 3=last four hours
@ -1533,7 +1604,7 @@ user_pref("browser.backspace_action", 2);
* [SETTING] Options>General>Tabs>Open new windows in a new tab instead ***/ * [SETTING] Options>General>Tabs>Open new windows in a new tab instead ***/
user_pref("browser.link.open_newwindow", 3); user_pref("browser.link.open_newwindow", 3);
/* 3009: enable APZ (Async Pan/Zoom) - requires e10s /* 3009: enable APZ (Async Pan/Zoom) - requires e10s
* [1] http://www.ghacks.net/2015/07/28/scrolling-in-firefox-to-get-a-lot-better-thanks-to-apz/ ***/ * [1] https://www.ghacks.net/2015/07/28/scrolling-in-firefox-to-get-a-lot-better-thanks-to-apz/ ***/
// user_pref("layers.async-pan-zoom.enabled", true); // user_pref("layers.async-pan-zoom.enabled", true);
/* 3010: enable ctrl-tab previews ***/ /* 3010: enable ctrl-tab previews ***/
user_pref("browser.ctrlTab.previews", true); user_pref("browser.ctrlTab.previews", true);
@ -1596,6 +1667,10 @@ user_pref("browser.bookmarks.showRecentlyBookmarked", false);
user_pref("browser.urlbar.decodeURLsOnCopy", true); user_pref("browser.urlbar.decodeURLsOnCopy", true);
/* 3028: disable middle-click enabling auto-scrolling [WINDOWS] [MAC] ***/ /* 3028: disable middle-click enabling auto-scrolling [WINDOWS] [MAC] ***/
// user_pref("general.autoScroll", false); // user_pref("general.autoScroll", false);
/* 3029: disable Firefox Screenshots (FF54+)
* [1] https://www.ghacks.net/2017/05/28/firefox-screenshots-integrated-in-firefox-nightly/
* [2] https://github.com/mozilla-services/screenshots ***/
// user_pref("extensions.screenshots.system-disabled", true);
/* END: internal custom pref to test for syntax errors ***/ /* END: internal custom pref to test for syntax errors ***/
user_pref("ghacks_user.js.parrot", "No no he's not dead, he's, he's restin'! Remarkable bird, the Norwegian Blue"); user_pref("ghacks_user.js.parrot", "No no he's not dead, he's, he's restin'! Remarkable bird, the Norwegian Blue");
@ -1726,7 +1801,7 @@ user_pref("browser.history.allowReplaceState", false);
// ***/ // ***/
/* FF48 /* FF48
// 0806: disable 'unified complete': 'Search with [default search engine]' // 0806: disable 'unified complete': 'Search with [default search engine]'
// [1] http://techdows.com/2016/05/firefox-unified-complete-aboutconfig-preference-removed.html // [-] http://techdows.com/2016/05/firefox-unified-complete-aboutconfig-preference-removed.html
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1181078 // [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1181078
user_pref("browser.urlbar.unifiedcomplete", false); user_pref("browser.urlbar.unifiedcomplete", false);
// ***/ // ***/
@ -1758,12 +1833,13 @@ user_pref("browser.usedOnWindows10.introURL", "");
// 0308: disable plugin update notifications // 0308: disable plugin update notifications
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1277905 // [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1277905
user_pref("plugins.update.notifyUser", false); user_pref("plugins.update.notifyUser", false);
// 0410: disable "Block dangerous and deceptive content"- replaced by browser.safebrowsing.phishing.enabled // 0410: disable "Block dangerous and deceptive content" - replaced by browser.safebrowsing.phishing.enabled
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1025965 // [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1025965
// user_pref("browser.safebrowsing.enabled", false); // user_pref("browser.safebrowsing.enabled", false);
// 1266: disable rc4 ciphers // 1266: disable rc4 ciphers
// [1] https://trac.torproject.org/projects/tor/ticket/17369 // [1] https://trac.torproject.org/projects/tor/ticket/17369
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1268728 // [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1268728
// [-] https://www.fxsitecompat.com/en-CA/docs/2016/rc4-support-has-been-completely-removed/
user_pref("security.ssl3.ecdhe_ecdsa_rc4_128_sha", false); user_pref("security.ssl3.ecdhe_ecdsa_rc4_128_sha", false);
user_pref("security.ssl3.ecdhe_rsa_rc4_128_sha", false); user_pref("security.ssl3.ecdhe_rsa_rc4_128_sha", false);
user_pref("security.ssl3.rsa_rc4_128_md5", false); user_pref("security.ssl3.rsa_rc4_128_md5", false);
@ -1829,3 +1905,16 @@ user_pref("media.getusermedia.screensharing.allow_on_old_platforms", false);
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1322736 // [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1322736
user_pref("dom.beforeAfterKeyboardEvent.enabled", false); user_pref("dom.beforeAfterKeyboardEvent.enabled", false);
// ***/ // ***/
/* FF54
// 0415: disable reporting URLs (safe browsing)
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1288633
user_pref("browser.safebrowsing.reportMalwareMistakeURL", "");
user_pref("browser.safebrowsing.reportPhishMistakeURL", "");
// 1830: block websites detecting DRM is disabled
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1242321
user_pref("media.eme.apiVisible", false);
// 2425: disable Archive Reader API
// i.e reading archive contents directly in the browser, through DOM file objects
// [-] https://bugzilla.mozilla.org/show_bug.cgi?id=1342361
user_pref("dom.archivereader.enabled", false);
// ***/