Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLure victim to load untrusted content in vulnerable Electron app
-
DeliveryScript issues cross-origin fetch to custom scheme
-
ExploitResponse returned script-readable instead of opaque
-
ExecutionRead cross-origin response body
-
ImpactExfiltrate sensitive data to attacker
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
|
| Exploitation Conditions | Exploitable only when an Electron application (1) registers a custom scheme via protocol.registerFileProtocol or protocol.registerHttpProtocol with supportFetchAPI enabled AND corsEnabled disabled, and (2) loads untrusted content within the same session that can issue cross-origin requests to that scheme. Limiting factors: UI:R requires the victim to load the malicious/untrusted content; the app must expose exactly this scheme configuration; schemes deliberately registered with corsEnabled=on are readable by design and NOT vulnerable; and the app must actually serve sensitive data through the affected file/http protocol handlers. Apps that never register such a scheme, or never load untrusted content in that session, are unaffected. |
| Impact | This is a real but conditionally-gated web-security flaw, not a raw-network RCE. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N = 7.4) reflects a same-origin-policy bypass: responses served by protocol.registerFileProtocol/registerHttpProtocol for a custom scheme registered with supportFetchAPI enabled but corsEnabled disabled remained script-readable across origins, letting untrusted content in the same session read another origin's response bodies (C:H, S:C scope change, no integrity/availability impact). No EPSS score, no CISA KEV entry, and no public exploit are present in the input, so exploitation status is 'no public exploit identified at time of analysis.' The commit evidence (OpaqueResponseFilter forcing FetchResponseType::kOpaque on no-cors cross-origin loads) confirms the root cause and that this is a residual completion of the earlier CVE-2026-70604 fix - meaning the class of bug was already known and partially patched, raising the plausibility that someone could reconstruct it from the diff even though no POC is cited. Real-world priority is tempered by the narrow precondition: only apps that both register such a scheme (supportFetchAPI on / corsEnabled off) AND load untrusted content in the same session are affected; schemes intentionally set corsEnabled=on are cross-origin readable by design and are out of scope. So despite the 'ubiquitous framework' footprint, the exploitable population is a subset of Electron apps, making this a medium operational priority rather than a drop-everything event. |
| Exploit ScenarioDerived | An Electron app registers a custom scheme via registerFileProtocol/registerHttpProtocol with supportFetchAPI enabled but corsEnabled disabled, and also loads untrusted or attacker-influenced web content in the same session. The attacker's content issues a cross-origin fetch/XHR to that custom scheme and reads the response body (e.g., local files or privileged HTTP responses) that should have been opaque, exfiltrating it. No public POC is cited, but the fix commit diff is available and could aid reconstruction; UI:R means a victim must load the malicious content. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 29, 2026
Cross-origin information disclosure in the Electron framework allows untrusted web content loaded inside an Electron application to read responses served through custom protocol schemes registered with protocol.registerFileProtocol or protocol.registerHttpProtocol when supportFetchAPI is enabled but corsEnabled is disabled. Affected are Electron builds prior to 41.10.6, 42.9.2, 43.4.1 and 44.0.0-beta.5; exploitation requires that the host application actually exposes such a scheme and loads attacker-influenced content in the same session, so severity is real but conditional rather than universal. The issue is an incomplete remediation of CVE-2026-70604, no public exploit code or active exploitation has been identified at time of analysis, and unauthenticated remote attackers can trigger it through victim interaction (CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N, base 7.4).
RemediationAI
Vendor-released patch: 41.10.6, 42.9.2, 43.4.1 and 44.0.0-beta.5, published as release tags v41.10.6, v42.9.2, v43.4.1 and v44.0.0-beta.5 and detailed in advisory GHSA-j84w-jfhq-vhvj and the four upstream commits (4d2784cc8592471ee2276235b8c2a03efddf937d, 80178e4631cb2f6a5e42f8e793b2ae9624e78a0d, c595b05976e7a885465b043d17e00a92fc3c3397, ef75c4b98caaa3ebc615f1eba302027028ee04d2); upgrade every affected Electron dependency to the fixed version for its release line and rebuild the application, noting that because this is the residual part of CVE-2026-70604, applications patched only against the earlier advisory must still upgrade. If an immediate upgrade is not possible, the effective compensating control is to stop the two preconditions from co-occurring: do not load untrusted or remotely fetched content in the same session or session partition that exposes a supportFetchAPI-enabled, corsEnabled-disabled custom scheme (use a separate BrowserWindow session or partition for untrusted content, at the cost of duplicating session state such as cookies and caches), and where the scheme does not require the Fetch API, register it without supportFetchAPI so the vulnerable URLLoader path is not used, accepting that fetch() becomes unavailable for that scheme while XMLHttpRequest continues to work. Serving secrets through registerFileProtocol or registerHttpProtocol handlers should be avoided or the handler should validate request.initiator against a trusted origin allow-list, which adds per-request logic but limits what a cross-origin reader could retrieve. Enabling corsEnabled on the scheme is not a mitigation for this flaw: schemes registered with corsEnabled enabled are cross-origin readable by design, so that setting simply makes the exposure intentional rather than fixing it.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 4 packages in npm, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Electron is a Chromium- and Node.js-based framework for building cross-platform desktop applications, and it lets developers intercept custom URL schemes through the protocol module. When a scheme is registered with supportFetchAPI enabled, requests to it are routed through Electron's URLLoader factory (shell/browser/net/electron_url_loader_factory.cc) rather than the standard Chromium network stack, and the corsEnabled flag controls whether responses to that scheme may be read across origins. The root cause is a CWE-346 origin validation error: the StartLoading path computed an 'opaque response' flag for cross-origin no-cors requests, but that flag was only applied to the string, buffer and stream sinks, while the file and http sinks built or forwarded their own URLResponseHead and therefore lost the opaque tag. As a result, the renderer's fetch/XHR request to the cross-origin custom scheme received a response typed as readable instead of as FetchResponseType::kOpaque, letting the initiating (untrusted) origin read the payload. The upstream fix interposes a new OpaqueResponseFilter URLLoaderClient that forwards every callback to the wrapped client while forcibly rewriting head->response_type to kOpaque on OnReceiveResponse, and threads a tag_response_opaque boolean through StartLoadingFile and StartLoadingHttp so the classification survives regardless of which sink serves the response; four commits (4d2784cc, 80178e46, c595b059, ef75c4b9) implement this. Schemes deliberately registered with corsEnabled enabled are cross-origin readable by design and are explicitly out of scope of this vulnerability.
Know when Electron gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N
Remote crafted web content (AV:N/AC:L/PR:N) requires the victim to load it (UI:R); cross-origin read breaks the same-origin boundary (S:C, C:H) with no write or availability impact (I:N/A:N).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5, responses served through protocol.registerFileProtocol or protocol.registerHttpProtocol for a custom scheme registered with supportFetchAPI enabled but corsEnabled disabled could remain script-readable across origins. This residual issue completes the remediation for CVE-2026-70604. Applications are affected only when they expose such a scheme and load untrusted content in the same session. Schemes intentionally registered with corsEnabled enabled remain cross-origin readable by design. This issue is fixed in versions 41.10.6, 42.9.2, 43.4.1, and 44.0.0-beta.5.
Technical POC Analysis
Evidence basis: the GitHub advisory only.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Electron, the desktop application framework behind many enterprise clients and internal tools, contains a cross-origin information disclosure flaw (CVE-2026-102675) that can allow untrusted web content to read responses served by an application's custom protocol handlers. Exposure is conditional rather than universal: it affects organizations running Electron builds below 41.10.6, 42.9.2, 43.4.1 or 44.0.0-beta.5 where the application registers such a scheme and loads attacker-influenced content in the same session, which concentrates the risk in products that render remote or third-party content. Leadership should care because a successful attack quietly exposes confidential application data, and no public exploit has been identified at time of analysis.
No vendor-released patch identified at time of analysis. Interim mitigations: disable supportFetchAPI on protocol.registerFileProtocol or protocol.registerHttpProtocol registrations and/or enable corsEnabled; avoid loading untrusted or attacker-influenced web content (remote URLs, third-party embeds, attacker-supplied pages) inside the affected Electron session; restrict custom protocol schemes to application-local assets only; and direct users to render untrusted web content in a standard browser rather than the Electron application.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
GitHub Electron versions 1.8.2-beta.3 and earlier, 1.7.10 and earlier, 1.6.15 and earlier has a vulnerability in the pro
Cross-site scripting in DeepChat's Mermaid diagram renderer escalates to full remote code execution on affected desktop
Remote code execution in DeepChat 0.5.1 and below is possible through a cross-site scripting flaw in Mermaid diagram ren
Stored cross-site scripting in SiYuan through 3.8.4 lets an attacker who can set a notebook name containing an HTML payl
GitHub Electron before 1.6.8 allows remote command execution because of a nodeIntegration bypass vulnerability. Rated hi
GitHub Electron 1.7.15, 1.8.7, 2.0.7, and 3.0.0-beta.6, in certain scenarios involving IFRAME elements and "nativeWindow
Electron version 1.7 up to 1.7.12; 1.8 up to 1.8.3 and 2.0.0 up to 2.0.0-beta.3 contains an improper handling of values
electron-updater allows for automatic updates for Electron apps. Rated high severity (CVSS 7.5), this vulnerability is r
Cross-origin read bypass in Electron's custom protocol handler exposes sensitive application data to remote pages via fe
Native code execution outside the Chromium sandbox is achievable in Electron prior to 39.8.9, 40.9.2, 41.2.1, and 42.0.0
In Electron before versions 7.2.4, 8.2.4, and 9.0.0-beta21, there is a context isolation bypass. Rated critical severity
Privilege escalation in the Electron framework lets a <webview> guest grant itself Node.js integration inside its Web Wo
EUVD-2026-89093
GHSA-j84w-jfhq-vhvj
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB