Security/Fusion/Esr140: Difference between revisions
(Roughly the Scope) |
(→See also: only direct pages) |
||
| (19 intermediate revisions by the same user not shown) | |||
| Line 4: | Line 4: | ||
[https://bugzilla.mozilla.org/show_bug.cgi?id=1958496 Bug 1958496] is meant to track the progress on the project. | [https://bugzilla.mozilla.org/show_bug.cgi?id=1958496 Bug 1958496] is meant to track the progress on the project. | ||
Automatic for linking tor patches with bugzilla bugs: [https://torpatch.es/128 Tor Browser Patches] | |||
== Status == | |||
As usual, commit hashes will become outdated, and the most recent active branch should be considered. | |||
=== P1: patches in Phab, blocked review === | |||
=== P2: need help from upstream! === | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1746668 '''Bug 1746668''']: l10n leak important improvements, see comment 28 with a plan I outlined, we need approval, or to somehow review it and then get started with it | |||
** manuel: not sure who to ask right now, zibi left mozilla recently, so we need to find someone else to ask | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1944251 '''Bug 1944251''']: drop ''font.system.whitelist'', make TB consistent with Firefox and improve compatibility ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/43322 #43322]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1397996 '''Bug 1397996''']: scrollbar leaks, we want an upstream take on it (tradeoffs with accessibility) ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/22137 #22137]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1676104 '''Bug 1676104''']: this is not a P1 only because it should affect UI and/or AC requests (e.g., addons?). Our current patch is ''BB 40171: Make WebRequest and GeckoWebExecutor First-Party aware'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/5240a3b51428d50626a385976e7da78d121b8ee4 5240a3b5]); see also [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/40171 #40171] (still open for uplift). | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1869821 '''Bug 1869821''']: ''intl.accept_languages'' is very dangerous. P2 only because Firefox has localized builds rather than multi-lingual like us and because we might want to talk about our patches first (''BB 42084: Ensure English spoofing works even if preferences are set out of order.'' + ''BB 41930: Remove the UI to customize accept_languages.'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2d23c333201787af1ea5fbef2b9cf2426fc0c0e3 2d23c333] and [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/79f3e7cd3ba260e7a43aba21ce99f2ddf5cda7b9 79f3e7cd]). Good analysis in [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41930 #41930]. | |||
* '''''BB 30605: Honor privacy.spoof_english in Android''''' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/160f0b8a68bf41abfa797a51df813743c188bfa0 160f0b8a]), no Bug yet, as far as I know. We'll need some help from upstream because it needs also an additional part for the UI (''TB 40087 [android]: Implement a switch for spoof English.'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/7e749377ceefee0424efb640c84a1fd4c41b6ed6 7e749377], for us), and I think we've never uplifted something user-exposed. | |||
* '''''BB 42562: Normalized the Accepted Languages on Android.''''' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/299ae962bed521da68c408b2184593a5d02deae1 299ae962]): this goes probably with spoof English. In any case, locale protection is pretty weak on Firefox, especially on Android (even though Android has a lot of other problems) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1594455 Bug 1594455]: LB styling/cosmetics. Our UX team investigated a lot and we think our LB is really good looking, but Moz UX team will probably want to check it first. We could also do it in multiple steps (e.g., rounded corner and vertical center first, custom background in another bug) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1923368 Bug 1923368]: disk leak, I'd like to force-inline more file types, not only PDFs (partially implemented downstream as BB 42220, [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/b784ed282ccbb79dca76e0bb3a290e94f6538054 b784ed28]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1475811 Bug 1475811]: nobody really understand how these speculative connections work . Downstream issue: [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/31075 #31075] and [https://gitlab.torproject.org/tpo/applications/tor-browser/-/merge_requests/797 !797], to replace ''BB 26353: Prevent speculative connect that violated FPI.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/775e046079c82ce66ffeec097e0dd1a1c4db6a02 775e0460]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1428034 Bug 1428034]: has something changed in the last 6 years? Our patch is ''BB 30541: Disable WebGL readPixel() for web content'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/44ff0b2cbf847a4b92444983263a2b23e634ac87 44ff0b2c]) | |||
* What about Wayland and fingerprinting? | |||
** E.g., [https://bugzilla.mozilla.org/show_bug.cgi?id=1940296 Bug 1940296] for vsync, but we currently force Wayland off because we don't know how fingerprintable it is | |||
** See also [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42645 #42645] | |||
* ''[https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/23247 TB 23247]: Communicating security expectations for .onion'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/646be9d321f1d24a4e81e60bf24fd445b6c09a10 646be9d3]): over the years, some patches have been uplifted for optionally treating .onion http as HTTPS. Can we resume the work also on that? Do we have a meta? | |||
==== Build and vendoring ==== | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1393901 '''Bug 1393901''']: WebRTC on mingw (various commits, [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41021 #41021], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41459 #41459], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42758 #42758 (moved)]). Our patches work, at least in ESR 128, but vendoring these 3rd party libs isn't trivial in Firefox, we might need help to prepare the patches as you like. | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1115874 '''Bug 1115874''']: make openh264 reproducible. We have the knowledge to do it, but we need to check how upstream wants to do it ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/15910 #15910]). | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1902067 '''Bug 1902067''']: official support for the gnullvm Rust target. We've been using it for almost a year now, with success ([https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/issues/29320 tor-browser-build#29320]) | |||
=== P3 === | |||
==== Upliftable ==== | |||
Maybe with some help | |||
* ''BB 42739: Use the brand name for profile error messages'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/41d4938d6d444c9146d63babee857f349db6551e 41d4938d]) | |||
* ''BB 43101: Deep link to the startup security warning explanation.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/73048f9b83d2e2c9402b9d7066b4804eff3862bf 73048f9b]) | |||
* ''BB 41854: Allow overriding download spam protection.'' and ''BB 42832: Download spam prevention exemption for browser extensions.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/11b584757f6b6f05b6cfff39b666fcefe489cea4 11b58475], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/c8e60400261b01798423f8d2eda91c1938a565c7 c8e60400]) | |||
** Might need some refinement: [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/43224 #43224] | |||
** Might already have a MozBug? | |||
* ''BB 42616: Remove VideoCaptureTest.kt.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/e3174c366316b728a2e31d0db85322946ae1268b e3174c36]) | |||
** Cannot be uplifted as it is, we should exclude the file when ''MOZ_WEBRTC'' is ''false''/undefined rather than deleting the file | |||
* ''BB 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f183b1478018db5af7c72a90086b282a9f1453fa f183b147]) | |||
** Partially upliftable (the part to disable the create login with ''nocertdb'') | |||
* ''BB 40002: Remove about:ion'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ea34c897187853b3fa3bedf9db419eba9271f384 ea34c897]): could probably use an environment variable or some compile flag... | |||
* ''BB 42716: Disable unwanted about: pages'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/73f408371df259fe72ef749787b48687652352f9 73f40837]) | |||
** Partial (I like about:robots ) | |||
* ''BB 41599: Always return an empty string as network ID'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/888ca9a3ba6ec99b3597f1739a60cff21ffc91c1 888ca9a3]), with ''MOZ_PROXY_BYPASS_PROTECTION''? | |||
* ''BB 28369: Stop shipping pingsender executable'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/69e3f90b8ca575b5dac267f97161678130a05fee 69e3f90b]), with the telemetry build flags | |||
* ''BB 42070: Hide "Use smooth scrolling" from settings'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/8d84a9ea198c474766d65081da4fc412043c7693 8d84a9ea]) | |||
** This needs proper wiring with RFP/FPP (related: [https://bugzilla.mozilla.org/show_bug.cgi?id=1832598 Bug 1832598], [https://bugzilla.mozilla.org/show_bug.cgi?id=1834307 Bug 1834307]) | |||
* ''BB 41739: Remove "Website appearance" from about:preferences.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/b8cd05ccafa5be3529cd5f71ed2f079aeddc4831 b8cd05cc]) | |||
** Also needs proper wiring with RFP/FPP | |||
* ''BB 42774: Always hide the third-pary certs UI.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/0c388363de114b988b0b88b4951ab6fcc578530b 0c388363]) | |||
** We could probably replace the base browser constant with ''nocertdb'' | |||
* ''BB 33955: When copying an image only copy the image contents to the clipboard'', maybe with a pref? | |||
* ''BB 41791: Omit the source URL when copying page contents to the clipboard'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/33fc8474a22c13b222f010cdbae00f613b4c22e6 33fc8474]) with ''MOZ_PROXY_BYPASS_PROTECTION''? | |||
* ''Customize moz-toggle for tor-browser.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d999affc921dedaf0304603331e2cc95fbbe68e0 d999affc], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41333 #41333], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/40837 #40837]) | |||
** Some Bugs might already exist, but I don't know. | |||
* ''TB 41822: Unconditionally disable default browser UX in about:preferences'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/05ac42bf7af5b5bcb4a18f64d5001b20d1903973 05ac42bf]) behind a pref? | |||
==== Wish list ==== | |||
Solving these bugs would help us. | |||
Maybe we have downstream patches that aren't directly upliftable, but they could help us | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1799153 Bug 1799153] to drop BB 41454, [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d953b1d00643fae0e892ffc718ed04bc719d1535 d953b1d0] | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1895857 Bug 1895857] to drop BB 43072, [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4e8ccc775a923f2f19e2d7a0ea728fb8e965a7a0 4e8ccc77] | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1790187 Bug 1790187] to drop BB 41483, [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2e8f8a65fd7edbcdd4fafca1c0e9c7f9dcf50a9b 2e8f8a65] | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1940296 Bug 1940296] so that our pref becomes a defense-in-depth ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/43236 #43236]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1261591 Bug 1261591] as an official way to disable NTLM at build time (and replace ''BB 12974: Disable NTLM and Negotiate HTTP Auth'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cef5b636f03cdc785ca6905214879599b69fd3bc cef5b636]; close [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/27602 #27602]) | |||
* Reconsider the ''LoadLibrary'' protection disabled in [https://bugzilla.mozilla.org/show_bug.cgi?id=1869397 Bug 1869397] | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1851968 Bug 1851968] to improve user experience when force-inlining PDFs (and possibly other files) ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42220 #42220]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1909736 Bug 1909736], including proper wiring with the UI (for UI we have in ''BB 43117: Hide "Always underline links" from settings.'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/1df296b1b542c76d53d79defabbb1ff90f554882 1df296b1]) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1429838 Bug 1429838], we have a patch (''BB 27604: Fix addon issues when moving the profile directory'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/ddc87498ea5237eaacfd36e0df34429e6e8660ab ddc87498]) but according to the upstream review it isn't too good. Maybe we can start working again on this (but the patch is fine for us, I guess, so P3 rather than P1/P2?) | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1711084 Bug 1711084]: this might be important for Firefox. We have a patch that doesn't work for Firefox (according to Tom) (''BB 40432: Prevent probing installed applications'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4e946eebcac3da995cae5b2495c34ffcaa43afab 4e946eeb]). However, if we start working on it again, we might be able to create a patch that works both for Firefox and for Tor Browser. | |||
=== P4 === | |||
Changes to review first, and see if there's anything upstream can do, or patches that are worth mentioning, even though they're too specific to us to actually uplift. | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1763770 Bug 1763770] (part of ''Tweaks to the build system'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f4c94fc48c9b5e234efbd38b883f86858814e8b6 f4c94fc4]): we hack a Gradle file to generate fat AARs without a proper artifact setup | |||
* ''BB 28125: Prevent non-Necko network connections'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/1211e4d7b7ab9db0cc37039d79db7eaeb0253981 1211e4d7]): maybe can we export the compile time flag for proxy bypass protections upstream? | |||
* ''BB 16285: Exclude ClearKey system for now'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cdcd7ee6d6ea3f2fa8a4bd77963af256afde3974 cdcd7ee6]): can we make ''--disable-eme'' remove clearkey again? It was changed in [https://bugzilla.mozilla.org/show_bug.cgi?id=1300654 Bug 1300654] | |||
* Some compile-time flag to disable the Windows PB proxy exe (also part of ''Tweaks to the build system'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f4c94fc48c9b5e234efbd38b883f86858814e8b6 f4c94fc4]) | |||
* ''BB 40283: Workaround for the file upload bug'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/76ca7566c1690e640c263b7a7888ce28ef610304 76ca7566]): I think it's still needed, but it also depends on some preference we set? See the original analysis in [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/40283 #40283]. | |||
* An "official" way to disable ''RemoteSettings'' (currently we have ''BB 31740: Remove some unnecessary RemoteSettings instances'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/b5d5a565824437890549527d48f9e1f305b82cac b5d5a565]) | |||
* ''BB 43386: Use Firefox in the UA in RFP-exempt request.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/626d276ed28fd10acdb875dec94d1cecae615b1a 626d276e]): would other forks benefit from a way to force compatibility mode without the actual product name? | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1910912 Bug 1910912] to replace ''BB 42835: Create an actor to filter file data transfers'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/0f34b04885cef3ddd419f0c1020ff242f363a6bd 0f34b048]). I wonder if we should discuss usability/threat model first (I can't access the Bug) | |||
* ''BB 42019: Empty browser's clipboard on browser shutdown'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/24981b163d320ddcf5893e5852aa31d20f9978e6 24981b16]): IIRC we had several complains about the UX, so I don't know if upstream would be interested even with default disabled | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1752975 Bug 1752975], to support portable/standalone in Firefox. It's something we have in our threat model, but it's harder and harder to provide it. We have a few issues about this, and a patch for relative profile directory (''BB 9173: Change the default Firefox profile directory to be relative.'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/aa3fcbf16ee47f0d7dd07cba251e3d40234f55a2 aa3fcbf1]) | |||
* ''TB 11641: Disable remoting by default.'': things are changing upstream with the next ESR. We might want to check if we still want this kind of protection (we probably do, for linkability) and see how things have changed upstream to reconcile them with our patch. | |||
* ''TB 8324: Prevent DNS proxy bypasses caused by Drag&Drop'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/af1af9f6d70641b65ec60712342df3a213075851 af1af9f6]): we were never been able to reproduce the problem (DNS proxy bypass) with modern system | |||
=== Patches to assess === | |||
Could not reconstruct the original reason to have them or patches that might be replaced or dropped. | |||
* ''BB 42630: Disable LaterRun module.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/5b2be44c255564a0585d486838b57f88e9bfaf4b 5b2be44c]) | |||
* ''BB 41327: Disable UrlbarProviderInterventions'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d9394d1e7a1a331046bcb3a94989467b320982b8 d9394d1e]) | |||
* ''BB 26345: Hide tracking protection UI'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/dcc729b19c4c8973a4b54b0d28f4bdf4bbaa4cc8 dcc729b1]): we don't use ETP because we've never audited/compared it with our threat model, maybe something to discuss at a certain point ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/30939 #30939]) | |||
* ''TB 12647: Support symlinks in the updater.'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/451f22691cfd9cfda6e8d878868eec9aaea73f58 451f2269]): we have an issue about removing it ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/34319 #34319]) | |||
* ''TB 40073: Disable remote Public Suffix List fetching'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/84e9763d5a1ea6e0428fe51e1208e9d4eab8e060 84e9763d]): will not be needed anymore once we implement changes described in [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41831 #41831] and [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/41022 #41022] for onion aliases | |||
* ''TB 21952: Implement Onion-Location'' ([https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/23edd89d8188fd3da424a4cfb0f31a58666e38e0 23edd89d]): needs complete refactor, in the past we talked also with Brave (related issues: [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/40100 #40100], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42688 #42688], [https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42736 #42736] | |||
* New identity&Firefox's "fire" button: should we start a conversation to incrementally move our new identity in this new upstream functionality? I don't know if there's a specific Bug for that. | |||
* For Android we need to go through all our patches downstream first, so it's hard to tell what we currently need (except for what I've already written above) | |||
== Uplifted Bugs == | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1845105 Bug 1845105]: uplifted into 141 ''BB 41901: Hardcode normalized FontSubstitutes.'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/1539bc09a28bb0b457d14579b39885cb0d332aaa 1539bc09] | |||
* [https://bugzilla.mozilla.org/show_bug.cgi?id=1900648 Bug 1900648] (uplift for ''BB 42288: Allow language spoofing in status messages.'', [https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/f91b57d594f70be9a13c296e0a60cca099eee97b f91b57d5]) uplifted into 140 | |||
== Uplift Bugs == | |||
<bugzilla> | |||
{ | |||
"blocks":"1958496", | |||
"include_fields": "id, summary, status, assigned_to, whiteboard", | |||
"order": "status, user_story, id" | |||
} | |||
</bugzilla> | |||
== See also == | == See also == | ||
<subpages page="Security/Fusion" sort="asc" showpage="no" kidsonly="yes" limit="500"/> | |||
Latest revision as of 15:30, 30 June 2025
Page with uplift information from Tor Browser 14 to mozilla-central before reaching esr140. Patches need to land before May 22 to ride the train normally. For 140 the effort focuses on privacy.resistFingerprinting and everything that doesn't require us to land the Tor proxy code.
This page is meant to have a more editable version of Tor uplift priorities.
Bug 1958496 is meant to track the progress on the project.
Automatic for linking tor patches with bugzilla bugs: Tor Browser Patches
Status
As usual, commit hashes will become outdated, and the most recent active branch should be considered.
P1: patches in Phab, blocked review
P2: need help from upstream!
- Bug 1746668: l10n leak important improvements, see comment 28 with a plan I outlined, we need approval, or to somehow review it and then get started with it
- manuel: not sure who to ask right now, zibi left mozilla recently, so we need to find someone else to ask
- Bug 1944251: drop font.system.whitelist, make TB consistent with Firefox and improve compatibility (#43322)
- Bug 1397996: scrollbar leaks, we want an upstream take on it (tradeoffs with accessibility) (#22137)
- Bug 1676104: this is not a P1 only because it should affect UI and/or AC requests (e.g., addons?). Our current patch is BB 40171: Make WebRequest and GeckoWebExecutor First-Party aware (5240a3b5); see also #40171 (still open for uplift).
- Bug 1869821: intl.accept_languages is very dangerous. P2 only because Firefox has localized builds rather than multi-lingual like us and because we might want to talk about our patches first (BB 42084: Ensure English spoofing works even if preferences are set out of order. + BB 41930: Remove the UI to customize accept_languages., 2d23c333 and 79f3e7cd). Good analysis in #41930.
- BB 30605: Honor privacy.spoof_english in Android (160f0b8a), no Bug yet, as far as I know. We'll need some help from upstream because it needs also an additional part for the UI (TB 40087 [android]: Implement a switch for spoof English., 7e749377, for us), and I think we've never uplifted something user-exposed.
- BB 42562: Normalized the Accepted Languages on Android. (299ae962): this goes probably with spoof English. In any case, locale protection is pretty weak on Firefox, especially on Android (even though Android has a lot of other problems)
- Bug 1594455: LB styling/cosmetics. Our UX team investigated a lot and we think our LB is really good looking, but Moz UX team will probably want to check it first. We could also do it in multiple steps (e.g., rounded corner and vertical center first, custom background in another bug)
- Bug 1923368: disk leak, I'd like to force-inline more file types, not only PDFs (partially implemented downstream as BB 42220, b784ed28)
- Bug 1475811: nobody really understand how these speculative connections work . Downstream issue: #31075 and !797, to replace BB 26353: Prevent speculative connect that violated FPI. (775e0460)
- Bug 1428034: has something changed in the last 6 years? Our patch is BB 30541: Disable WebGL readPixel() for web content (44ff0b2c)
- What about Wayland and fingerprinting?
- E.g., Bug 1940296 for vsync, but we currently force Wayland off because we don't know how fingerprintable it is
- See also #42645
- TB 23247: Communicating security expectations for .onion (646be9d3): over the years, some patches have been uplifted for optionally treating .onion http as HTTPS. Can we resume the work also on that? Do we have a meta?
Build and vendoring
- Bug 1393901: WebRTC on mingw (various commits, #41021, #41459, #42758 (moved)). Our patches work, at least in ESR 128, but vendoring these 3rd party libs isn't trivial in Firefox, we might need help to prepare the patches as you like.
- Bug 1115874: make openh264 reproducible. We have the knowledge to do it, but we need to check how upstream wants to do it (#15910).
- Bug 1902067: official support for the gnullvm Rust target. We've been using it for almost a year now, with success (tor-browser-build#29320)
P3
Upliftable
Maybe with some help
- BB 42739: Use the brand name for profile error messages (41d4938d)
- BB 43101: Deep link to the startup security warning explanation. (73048f9b)
- BB 41854: Allow overriding download spam protection. and BB 42832: Download spam prevention exemption for browser extensions. (11b58475, c8e60400)
- Might need some refinement: #43224
- Might already have a MozBug?
- BB 42616: Remove VideoCaptureTest.kt. (e3174c36)
- Cannot be uplifted as it is, we should exclude the file when MOZ_WEBRTC is false/undefined rather than deleting the file
- BB 33852: Clean up about:logins (LockWise) to avoid mentioning sync, etc. (f183b147)
- Partially upliftable (the part to disable the create login with nocertdb)
- BB 40002: Remove about:ion (ea34c897): could probably use an environment variable or some compile flag...
- BB 42716: Disable unwanted about: pages (73f40837)
- Partial (I like about:robots )
- BB 41599: Always return an empty string as network ID (888ca9a3), with MOZ_PROXY_BYPASS_PROTECTION?
- BB 28369: Stop shipping pingsender executable (69e3f90b), with the telemetry build flags
- BB 42070: Hide "Use smooth scrolling" from settings (8d84a9ea)
- This needs proper wiring with RFP/FPP (related: Bug 1832598, Bug 1834307)
- BB 41739: Remove "Website appearance" from about:preferences. (b8cd05cc)
- Also needs proper wiring with RFP/FPP
- BB 42774: Always hide the third-pary certs UI. (0c388363)
- We could probably replace the base browser constant with nocertdb
- BB 33955: When copying an image only copy the image contents to the clipboard, maybe with a pref?
- BB 41791: Omit the source URL when copying page contents to the clipboard (33fc8474) with MOZ_PROXY_BYPASS_PROTECTION?
- Customize moz-toggle for tor-browser. (d999affc, #41333, #40837)
- Some Bugs might already exist, but I don't know.
- TB 41822: Unconditionally disable default browser UX in about:preferences (05ac42bf) behind a pref?
Wish list
Solving these bugs would help us.
Maybe we have downstream patches that aren't directly upliftable, but they could help us
- Bug 1799153 to drop BB 41454, d953b1d0
- Bug 1895857 to drop BB 43072, 4e8ccc77
- Bug 1790187 to drop BB 41483, 2e8f8a65
- Bug 1940296 so that our pref becomes a defense-in-depth (#43236)
- Bug 1261591 as an official way to disable NTLM at build time (and replace BB 12974: Disable NTLM and Negotiate HTTP Auth, cef5b636; close #27602)
- Reconsider the LoadLibrary protection disabled in Bug 1869397
- Bug 1851968 to improve user experience when force-inlining PDFs (and possibly other files) (#42220)
- Bug 1909736, including proper wiring with the UI (for UI we have in BB 43117: Hide "Always underline links" from settings., 1df296b1)
- Bug 1429838, we have a patch (BB 27604: Fix addon issues when moving the profile directory, ddc87498) but according to the upstream review it isn't too good. Maybe we can start working again on this (but the patch is fine for us, I guess, so P3 rather than P1/P2?)
- Bug 1711084: this might be important for Firefox. We have a patch that doesn't work for Firefox (according to Tom) (BB 40432: Prevent probing installed applications, 4e946eeb). However, if we start working on it again, we might be able to create a patch that works both for Firefox and for Tor Browser.
P4
Changes to review first, and see if there's anything upstream can do, or patches that are worth mentioning, even though they're too specific to us to actually uplift.
- Bug 1763770 (part of Tweaks to the build system, f4c94fc4): we hack a Gradle file to generate fat AARs without a proper artifact setup
- BB 28125: Prevent non-Necko network connections (1211e4d7): maybe can we export the compile time flag for proxy bypass protections upstream?
- BB 16285: Exclude ClearKey system for now (cdcd7ee6): can we make --disable-eme remove clearkey again? It was changed in Bug 1300654
- Some compile-time flag to disable the Windows PB proxy exe (also part of Tweaks to the build system, f4c94fc4)
- BB 40283: Workaround for the file upload bug (76ca7566): I think it's still needed, but it also depends on some preference we set? See the original analysis in #40283.
- An "official" way to disable RemoteSettings (currently we have BB 31740: Remove some unnecessary RemoteSettings instances, b5d5a565)
- BB 43386: Use Firefox in the UA in RFP-exempt request. (626d276e): would other forks benefit from a way to force compatibility mode without the actual product name?
- Bug 1910912 to replace BB 42835: Create an actor to filter file data transfers (0f34b048). I wonder if we should discuss usability/threat model first (I can't access the Bug)
- BB 42019: Empty browser's clipboard on browser shutdown (24981b16): IIRC we had several complains about the UX, so I don't know if upstream would be interested even with default disabled
- Bug 1752975, to support portable/standalone in Firefox. It's something we have in our threat model, but it's harder and harder to provide it. We have a few issues about this, and a patch for relative profile directory (BB 9173: Change the default Firefox profile directory to be relative., aa3fcbf1)
- TB 11641: Disable remoting by default.: things are changing upstream with the next ESR. We might want to check if we still want this kind of protection (we probably do, for linkability) and see how things have changed upstream to reconcile them with our patch.
- TB 8324: Prevent DNS proxy bypasses caused by Drag&Drop (af1af9f6): we were never been able to reproduce the problem (DNS proxy bypass) with modern system
Patches to assess
Could not reconstruct the original reason to have them or patches that might be replaced or dropped.
- BB 42630: Disable LaterRun module. (5b2be44c)
- BB 41327: Disable UrlbarProviderInterventions (d9394d1e)
- BB 26345: Hide tracking protection UI (dcc729b1): we don't use ETP because we've never audited/compared it with our threat model, maybe something to discuss at a certain point (#30939)
- TB 12647: Support symlinks in the updater. (451f2269): we have an issue about removing it (#34319)
- TB 40073: Disable remote Public Suffix List fetching (84e9763d): will not be needed anymore once we implement changes described in #41831 and #41022 for onion aliases
- TB 21952: Implement Onion-Location (23edd89d): needs complete refactor, in the past we talked also with Brave (related issues: #40100, #42688, #42736
- New identity&Firefox's "fire" button: should we start a conversation to incrementally move our new identity in this new upstream functionality? I don't know if there's a specific Bug for that.
- For Android we need to go through all our patches downstream first, so it's hard to tell what we currently need (except for what I've already written above)
Uplifted Bugs
- Bug 1845105: uplifted into 141 BB 41901: Hardcode normalized FontSubstitutes., 1539bc09
- Bug 1900648 (uplift for BB 42288: Allow language spoofing in status messages., f91b57d5) uplifted into 140
Uplift Bugs
18 Total; 9 Open (50%); 9 Resolved (50%); 0 Verified (0%);