11/******
22* name: arkenfox user.js
3- * date: 9 May 2022
4- * version: 100
3+ * date: 12 June 2022
4+ * version: 101
55* url: https://github.com/arkenfox/user.js
66* license: MIT: https://github.com/arkenfox/user.js/blob/master/LICENSE.txt
77
@@ -310,10 +310,10 @@ user_pref("network.gio.supported-protocols", ""); // [HIDDEN PREF]
310310 // user_pref("network.proxy.allow_bypass", false); // [HIDDEN PREF FF95-96]
311311/* 0710: disable DNS-over-HTTPS (DoH) rollout [FF60+]
312312 * 0=off by default, 2=TRR (Trusted Recursive Resolver) first, 3=TRR only, 5=explicitly off
313- * see "doh-rollout.home-region": USA Feb 2020 , Canada July 2021 [3]
313+ * see "doh-rollout.home-region": USA 2019 , Canada 2021, Russia/Ukraine 2022 [3]
314314 * [1] https://hacks.mozilla.org/2018/05/a-cartoon-intro-to-dns-over-https/
315315 * [2] https://wiki.mozilla.org/Security/DOH-resolver-policy
316- * [3] https://blog .mozilla.org/mozilla/news /firefox-by-default- dns-over-https-rollout-in-canada/
316+ * [3] https://support .mozilla.org/en-US/kb /firefox-dns-over-https
317317 * [4] https://www.eff.org/deeplinks/2020/12/dns-doh-and-odoh-oh-my-year-review-2020 ***/
318318 // user_pref("network.trr.mode", 5);
319319
@@ -334,8 +334,6 @@ user_pref("keyword.enabled", false);
334334 * intend to), can leak sensitive data (e.g. query strings: e.g. Princeton attack),
335335 * and is a security risk (e.g. common typos & malicious sites set up to exploit this) ***/
336336user_pref ( "browser.fixup.alternate.enabled" , false ) ;
337- /* 0803: display all parts of the url in the location bar ***/
338- user_pref ( "browser.urlbar.trimURLs" , false ) ;
339337/* 0804: disable live search suggestions
340338 * [NOTE] Both must be true for the location bar to work
341339 * [SETUP-CHROME] Override these if you trust and use a privacy respecting search engine
@@ -400,7 +398,8 @@ user_pref("security.password_lifetime", 5); // [DEFAULT: 30]
400398 * can leak in cross-site forms *and* be spoofed
401399 * [NOTE] Username & password is still available when you enter the field
402400 * [SETTING] Privacy & Security>Logins and Passwords>Autofill logins and passwords
403- * [1] https://freedom-to-tinker.com/2017/12/27/no-boundaries-for-user-identities-web-trackers-exploit-browser-login-managers/ ***/
401+ * [1] https://freedom-to-tinker.com/2017/12/27/no-boundaries-for-user-identities-web-trackers-exploit-browser-login-managers/
402+ * [2] https://homes.esat.kuleuven.be/~asenol/leaky-forms/ ***/
404403user_pref ( "signon.autofillForms" , false ) ;
405404/* 0904: disable formless login capture for Password Manager [FF51+] ***/
406405user_pref ( "signon.formlessCapture.enabled" , false ) ;
@@ -493,14 +492,6 @@ user_pref("security.OCSP.enabled", 1); // [DEFAULT: 1]
493492user_pref ( "security.OCSP.require" , true ) ;
494493
495494/** CERTS / HPKP (HTTP Public Key Pinning) ***/
496- /* 1220: disable or limit SHA-1 certificates
497- * 0 = allow all
498- * 1 = block all
499- * 3 = only allow locally-added roots (e.g. anti-virus) (default)
500- * 4 = only allow locally-added roots or for certs in 2015 and earlier
501- * [SETUP-CHROME] If you have problems, update your software: SHA-1 is obsolete
502- * [1] https://blog.mozilla.org/security/2016/10/18/phasing-out-sha-1-on-the-public-web/ ***/
503- user_pref ( "security.pki.sha1_enforcement_level" , 1 ) ;
504495/* 1221: disable Windows 8.1's Microsoft Family Safety cert [FF50+] [WINDOWS]
505496 * 0=disable detecting Family Safety mode and importing the root
506497 * 1=only attempt to detect Family Safety mode (don't import the root)
@@ -515,9 +506,9 @@ user_pref("security.family_safety.mode", 0);
515506user_pref ( "security.cert_pinning.enforcement_level" , 2 ) ;
516507/* 1224: enable CRLite [FF73+]
517508 * 0 = disabled
518- * 1 = consult CRLite but only collect telemetry (default)
509+ * 1 = consult CRLite but only collect telemetry
519510 * 2 = consult CRLite and enforce both "Revoked" and "Not Revoked" results
520- * 3 = consult CRLite and enforce "Not Revoked" results, but defer to OCSP for "Revoked" (FF99+)
511+ * 3 = consult CRLite and enforce "Not Revoked" results, but defer to OCSP for "Revoked" (FF99+, default FF100+ )
521512 * [1] https://bugzilla.mozilla.org/buglist.cgi?bug_id=1429800,1670985,1753071
522513 * [2] https://blog.mozilla.org/security/tag/crlite/ ***/
523514user_pref ( "security.remote_settings.crlite_filters.enabled" , true ) ;
@@ -589,16 +580,11 @@ user_pref("network.http.referer.XOriginPolicy", 2);
589580 * 0=send full URI (default), 1=scheme+host+port+path, 2=scheme+host+port ***/
590581user_pref ( "network.http.referer.XOriginTrimmingPolicy" , 2 ) ;
591582
592- /*** [SECTION 1700]: CONTAINERS
593- Check out Temporary Containers [2], read the article [3], and visit the wiki/repo [4]
594- [1] https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers
595- [2] https://addons.mozilla.org/firefox/addon/temporary-containers/
596- [3] https://medium.com/@stoically/enhance-your-privacy-in-firefox-with-temporary-containers-33925cd6cd21
597- [4] https://github.com/stoically/temporary-containers/wiki
598- ***/
583+ /*** [SECTION 1700]: CONTAINERS ***/
599584user_pref ( "_user.js.parrot" , "1700 syntax error: the parrot's bit the dust!" ) ;
600585/* 1701: enable Container Tabs and its UI setting [FF50+]
601- * [SETTING] General>Tabs>Enable Container Tabs ***/
586+ * [SETTING] General>Tabs>Enable Container Tabs
587+ * https://wiki.mozilla.org/Security/Contextual_Identity_Project/Containers ***/
602588user_pref ( "privacy.userContext.enabled" , true ) ;
603589user_pref ( "privacy.userContext.ui.enabled" , true ) ;
604590/* 1702: set behavior on "+ Tab" button to display container menu on left click [FF74+]
@@ -795,12 +781,6 @@ user_pref("network.cookie.lifetimePolicy", 2);
795781 * [NOTE] We already disable disk cache (1001) and clear on exit (2811) which is more robust
796782 * [1] https://bugzilla.mozilla.org/1671182 ***/
797783 // user_pref("privacy.clearsitedata.cache.enabled", true);
798- /* 2803: set third-party cookies to session-only
799- * [NOTE] .sessionOnly overrides .nonsecureSessionOnly except when .sessionOnly=false and
800- * .nonsecureSessionOnly=true. This allows you to keep HTTPS cookies, but session-only HTTP ones
801- * [1] https://feeding.cloud.geek.nz/posts/tweaking-cookies-for-privacy-in-firefox/ ***/
802- user_pref ( "network.cookie.thirdparty.sessionOnly" , true ) ;
803- user_pref ( "network.cookie.thirdparty.nonsecureSessionOnly" , true ) ; // [FF58+]
804784
805785/** SANITIZE ON SHUTDOWN : ALL OR NOTHING ***/
806786/* 2810: enable Firefox to clear items on shutdown (2811)
@@ -865,8 +845,8 @@ user_pref("privacy.sanitize.timeSpan", 0);
865845 FF56
866846 1369303 - spoof/disable performance API
867847 1333651 - spoof User Agent & Navigator API
868- JS: the version is spoofed as ESR, and the OS as Windows 10, OS 10.15, Android 10, or Linux
869- HTTP Headers: spoofed as Windows or Android
848+ version: spoofed as ESR (FF102+ this is limited to Android)
849+ OS: JS spoofed as Windows 10, OS 10.15, Android 10, or Linux | HTTP Headers spoofed as Windows or Android
870850 1369319 - disable device sensor API
871851 1369357 - disable site specific zoom
872852 1337161 - hide gamepads from content
@@ -1088,14 +1068,6 @@ user_pref("network.http.referer.spoofSource", false); // [DEFAULT: false]
10881068/* 6004: enforce a security delay on some confirmation dialogs such as install, open/save
10891069 * [1] https://www.squarefree.com/2004/07/01/race-conditions-in-security-dialogs/ ***/
10901070user_pref ( "security.dialog_enable_delay" , 1000 ) ; // [DEFAULT: 1000]
1091- /* 6005: enforce window.opener protection [FF65+]
1092- * Makes rel=noopener implicit for target=_blank in anchor and area elements when no rel attribute is set ***/
1093- user_pref ( "dom.targetBlankNoOpener.enabled" , true ) ; // [DEFAULT: true]
1094- /* 6006: enforce "window.name" protection [FF82+]
1095- * If a new page from another domain is loaded into a tab, then window.name is set to an empty string. The original
1096- * string is restored if the tab reverts back to the original page. This change prevents some cross-site attacks
1097- * [TEST] https://arkenfox.github.io/TZP/tests/windownamea.html ***/
1098- user_pref ( "privacy.window.name.update.enabled" , true ) ; // [DEFAULT: true]
10991071/* 6007: enforce Local Storage Next Generation (LSNG) [FF65+] ***/
11001072user_pref ( "dom.storage.next_gen" , true ) ; // [DEFAULT: true FF92+]
11011073/* 6008: enforce no First Party Isolation [FF51+]
@@ -1114,13 +1086,20 @@ user_pref("security.tls.version.enable-deprecated", false); // [DEFAULT: false]
11141086 * Web Compatibility Reporter adds a "Report Site Issue" button to send data to Mozilla
11151087 * [WHY] To prevent wasting Mozilla's time with a custom setup ***/
11161088user_pref ( "extensions.webcompat-reporter.enabled" , false ) ; // [DEFAULT: false]
1089+ /* 6012: disable SHA-1 certificates ***/
1090+ user_pref ( "security.pki.sha1_enforcement_level" , 1 ) ; // [DEFAULT: 1 FF102+]
11171091/* 6050: prefsCleaner: reset items removed from arkenfox FF92+ ***/
1092+ // user_pref("browser.urlbar.trimURLs", "");
11181093 // user_pref("dom.caches.enabled", "");
11191094 // user_pref("dom.storageManager.enabled", "");
11201095 // user_pref("dom.storage_access.enabled", "");
1096+ // user_pref("dom.targetBlankNoOpener.enabled", "");
1097+ // user_pref("network.cookie.thirdparty.sessionOnly", "");
1098+ // user_pref("network.cookie.thirdparty.nonsecureSessionOnly", "");
11211099 // user_pref("privacy.firstparty.isolate.block_post_message", "");
11221100 // user_pref("privacy.firstparty.isolate.restrict_opener_access", "");
11231101 // user_pref("privacy.firstparty.isolate.use_site", "");
1102+ // user_pref("privacy.window.name.update.enabled", "");
11241103 // user_pref("security.insecure_connection_text.enabled", "");
11251104
11261105/*** [SECTION 7000]: DON'T BOTHER ***/
@@ -1207,6 +1186,7 @@ user_pref("_user.js.parrot", "7000 syntax error: the parrot's pushing up daisies
12071186 // user_pref("network.http.referer.disallowCrossSiteRelaxingDefault", true);
12081187 // user_pref("network.http.referer.disallowCrossSiteRelaxingDefault.top_navigation", true); // [FF100+]
12091188 // user_pref("privacy.partition.network_state.ocsp_cache", true);
1189+ // user_pref("privacy.query_stripping.enabled", true); // [FF101+] [ETP FF102+]
12101190 // user_pref("privacy.trackingprotection.enabled", true);
12111191 // user_pref("privacy.trackingprotection.socialtracking.enabled", true);
12121192 // user_pref("privacy.trackingprotection.cryptomining.enabled", true); // [DEFAULT: true]
0 commit comments