run_electrum: proxy command line option implies proxy enabled (fixes #10324)
What changed, and why it matters
This commit fixes a bug where users who typed a proxy setting on the command line could believe their traffic was being routed through that proxy, but Electrum was not actually enabling proxy mode. The fix makes specifying a proxy automatically turn proxy mode on. If left unfixed, a user might leak network traffic outside their intended proxy, which matters for privacy but is not a direct remote exploit.
Treat as a low-to-moderate privacy fix. Users relying on command-line proxy settings should upgrade and verify that proxy mode is enabled when --proxy is used. No emergency response is indicated.
Security signals we found
Fixes a user-intent/configuration mismatch that could cause traffic to bypass an intended proxy
Privacy-related network routing issue
No evidence of malicious code, remote code execution, or authentication bypass in the diff
Evidence from the diff
The change is in run_electrum’s CLI argument parsing. When SimpleConfig.NETWORK_PROXY is present in config_options, the code now also sets SimpleConfig.NETWORK_PROXY_ENABLED to True. Previously, a user could pass –proxy without –proxy-enabled, and the proxy value would be stored but ignored for network connections. This is a configuration-consistency bug with privacy implications rather than a memory-safety or authentication flaw.
Changed components
run_electrum CLI argument parserproxy configuration handlingInspect captured patch +2 / −0
diff --git a/run_electrum b/run_electrum
index 08038ce..e9b3ab8 100755
--- a/run_electrum
+++ b/run_electrum
@@ -319,6 +319,8 @@ def parse_command_line(simple_parser=False) -> Dict:
config_options = {key: config_options[key] for key in filter(f, config_options.keys())}
if config_options.get(SimpleConfig.NETWORK_SERVER.key()):
config_options[SimpleConfig.NETWORK_AUTO_CONNECT.key()] = False
+ if config_options.get(SimpleConfig.NETWORK_PROXY.key()):
+ config_options[SimpleConfig.NETWORK_PROXY_ENABLED.key()] = True
config_options['cwd'] = cwd = os.getcwd()
Why this scored 49/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.