tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit cc557ad4a54e77e4551aed4d8c3bf27052c1e425
parent 1d48db8e23de0b583ece11a82a3f575a22416494
Author: Dan Ballard <dan@mindstab.net>
Date:   Tue,  1 Oct 2024 10:46:37 -0700

TB 42660: Disable ProxySelector.openConnectionWithProxy and NOPify CrashReporter.sendCrashReport

Diffstat:
Mmobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java | 23+++++++++++++----------
Mmobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java | 5+++++
2 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java b/mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ProxySelector.java @@ -29,16 +29,19 @@ import java.util.List; public class ProxySelector { public static URLConnection openConnectionWithProxy(final URI uri) throws IOException { - final java.net.ProxySelector ps = java.net.ProxySelector.getDefault(); - Proxy proxy = Proxy.NO_PROXY; - if (ps != null) { - final List<Proxy> proxies = ps.select(uri); - if (proxies != null && !proxies.isEmpty()) { - proxy = proxies.get(0); - } - } - - return uri.toURL().openConnection(proxy); + // tor-browser#42660: This should not be used: it cannot safely get tor configs so would be a + // proxy bypass risk. + throw new IOException("openConnectionWithProxy disabled by tb-42660"); + // final java.net.ProxySelector ps = java.net.ProxySelector.getDefault(); + // Proxy proxy = Proxy.NO_PROXY; + // if (ps != null) { + // final List<Proxy> proxies = ps.select(uri); + // if (proxies != null && !proxies.isEmpty()) { + // proxy = proxies.get(0); + // } + // } + // + // return uri.toURL().openConnection(proxy); } public ProxySelector() {} diff --git a/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java b/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/CrashReporter.java @@ -155,6 +155,11 @@ public class CrashReporter { @NonNull final File minidumpFile, @NonNull final CrashAnnotations extras) throws IOException, URISyntaxException { + // tor-browser#42660: makeing a NOP + if (true) { + return GeckoResult.fromValue("0"); + } + Log.d(LOGTAG, "Sending crash report: " + minidumpFile.getPath()); extras.sanitizeForReport();