Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLoad malicious content in app's sandboxed iframe
-
DeliveryScript opens popup via target=_blank/middle-click
-
ExploitPopup skips inherited sandbox flags (OpenURLFromTab)
-
ExecutionPopup runs with embedding app's origin
-
ImpactRead cookies/storage, same-origin scripting
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Origin validation
|
| Exploitation Conditions | Requires the target Electron application (prior to 41.10.4 / 42.5.2 / 43.0.0) to embed UNTRUSTED web content inside an HTML sandboxed iframe configured with the 'allow-scripts allow-popups' keywords but WITHOUT 'allow-popups-to-escape-sandbox'. Exploitation is triggered when that iframe opens a popup via Electron's OpenURLFromTab navigation path - specifically links using target="_blank" or a middle-click - which then fails to inherit the parent's sandbox restrictions and receives the embedding application's full origin. Limiting factors: the flaw is inert for applications that do not embed untrusted content in sandboxed iframes (explicitly stated unaffected); it requires the specific non-default iframe sandbox configuration; and CVSS marks UI:R, reflecting that a middle-click path needs user interaction (though scripted target=_blank popups reduce that dependency). |
| Impact | This is a legitimate but conditionally-scoped issue in an extremely widely-deployed framework. The vendor CVSS3.1 vector (AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N = 8.2) is internally consistent with the described impact: a scope-changing (S:C) origin-boundary breach where content isolated in a sandboxed iframe escapes to the embedding application's full origin, exposing cookies, storage (C:H) and enabling same-origin scripting (I:L). No EPSS score, no CISA KEV listing, and no public POC are present in the input, so exploitation status is 'no public exploit identified at time of analysis' - this is not a widespread-exploitation emergency. The score is meaningfully gated by a non-default precondition that CVSS base metrics do not capture: the affected application must itself embed UNTRUSTED content inside a sandboxed iframe configured with 'allow-scripts allow-popups' (and without 'allow-popups-to-escape-sandbox'). The description explicitly states applications not embedding untrusted content in sandboxed iframes are unaffected, so real-world exposure is far narrower than the ubiquity of Electron would suggest. PR:N is appropriate because the attacker is the untrusted embedded web content, not an authenticated app user. Bottom line: real but targeted - prioritize for Electron apps that render third-party/untrusted web content in sandboxed iframes; deprioritize for apps that only load trusted first-party content. |
| Exploit ScenarioDerived | An Electron application embeds untrusted third-party web content in a sandboxed iframe using 'allow-scripts allow-popups'. Attacker-controlled script in that iframe opens a popup via target="_blank" (or lures a middle-click) through the OpenURLFromTab path; the popup loads without inheriting the iframe's sandbox flags, running with the embedding application's full origin. The attacker's popup content then reads that origin's cookies and storage and performs same-origin scripting. No public POC is identified in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 29, 2026
Electron before 41.10.4, 42.5.2, and 43.0.0 fails to propagate HTML iframe sandbox restrictions to popups opened through its OpenURLFromTab navigation path, so an untrusted iframe configured with 'allow-scripts allow-popups' (but without 'allow-popups-to-escape-sandbox') can open a new window that runs with the embedding application's full origin, granting same-origin script access to that origin's cookies and storage. Exploitation requires the target application to embed untrusted web content in such a sandboxed iframe and to trigger a popup - via a scripted target="_blank" link or a middle-click - so the assessed CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N rating marks this as unauthenticated but user-interaction dependent, with high confidentiality and low integrity impact and a changed scope. Applications that do not embed untrusted content in sandboxed iframes are explicitly unaffected; no public exploit code or confirmed active exploitation was identified at time of analysis, and the issue is fixed by vendor-released versions 41.10.4, 42.5.2, and 43.0.0.
RemediationAI
Vendor-released patch: upgrade Electron to 41.10.4, 42.5.2, or 43.0.0 (or later on the corresponding line), as documented in GHSA-hq2x-r82h-9wj4; the fix is carried by PR https://github.com/electron/electron/pull/52133 and commits 7ea14d5f55ecb11a30447701ddca16b3feee0bba, e26b2640e7795c42bfb111b76009cbb4327c9a69, and ebe1165ee2b05c203c26dd2244ef1c5b9b1c04da, and adds an openerSandboxFlags webPreference so popups inherit the opener's sandbox flags. If immediate upgrade is not possible, the most direct compensating control is to stop allowing popups from sandboxed untrusted content: remove the 'allow-popups' keyword from any sandboxed iframe hosting untrusted HTML (note that this also blocks legitimate popup flows such as OAuth or share dialogs initiated inside that frame, and the frame can still log blocked-window console errors), or, if popups are required, add 'allow-popups-to-escape-sandbox' only when the framed content is actually trusted - applying it to untrusted content deliberately grants the escaped behavior and is not a mitigation. Alternatively, intercept popups at the application layer by setting a window-open handler (setWindowOpenHandler) or listening for the '-new-window' event and denying, or forcing the popup to load in a hardened session partition, for untrusted iframes; the trade-off is that this breaks expected new-window behavior for the embedded content. Hosting untrusted content in a separate session partition or distinct origin with node integration disabled reduces the value of a same-origin popup but does not restore the missing sandbox inheritance, so treat it as defense in depth only until the patched Electron version is deployed.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 3 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
The flaw is a CWE-346 origin validation error in how Electron constructs the auxiliary browsing context (popup) requested from a sandboxed frame. Per the HTML standard's iframe sandbox rules, an auxiliary browsing context created by a sandboxed frame must inherit the initiator's sandbox flags unless the 'allow-popups-to-escape-sandbox' keyword is present; Chromium enforces this through the kPropagatesToAuxiliaryBrowsingContexts flag consulted by content::WebContentsImpl::CreateWithOpener. Electron's own OpenURLFromTab implementation in shell/browser/api/electron_api_web_contents.cc resolved the initiator and checked whether 'allow-popups' was set, but never carried the initiator document's active sandbox flag set onto the new WebContents created for the popup, leaving the popup unsandboxed and, because it was opened in the embedding application's context, effectively same-origin with the host application. The upstream fix (PR 52133, commits 7ea14d5f, e26b2640, ebe1165e) resolves the initiating frame via source_render_process_id/source_render_frame_id (necessary because for non-CURRENT_TAB dispositions frame_tree_node_id refers to a frame that does not yet exist), captures the initiator's flags when kPropagatesToAuxiliaryBrowsingContexts is absent, threads them through the '-new-window' event into openGuestWindow as inheritedSandboxFlags, and applies them as a new openerSandboxFlags webPreference that becomes starting_sandbox_flags on the guest WebContents - sandbox flags can only be added this way, never cleared. The affected package is the Electron framework itself (CPE cpe:2.3:a:electron:electron:*:*:*:*:*:*:*:*) across all releases before the fixed branches; the impact is a bypass of the HTML iframe sandbox attribute for origin isolation, not a break of Chromium's OS-level process sandbox.
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:L/I:L/A:N
Attacker is untrusted embedded web content (PR:N) crossing the sandbox origin boundary (S:C) to expose the app origin's cookies/storage (C:H) with same-origin scripting (I:L); popup/click path implies UI:R, no availability impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorNVD
Lifecycle Timeline
4DescriptionNVD
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 41.10.4, 42.5.2, and 43.0.0, popups opened from a sandboxed iframe through Electron's OpenURLFromTab navigation path, including links using target="_blank" or a middle-click, did not receive the inherited HTML sandbox restrictions. An untrusted iframe using the allow-scripts allow-popups configuration could therefore open a popup with the embedding application's full origin, exposing that origin's cookies, storage, and same-origin scripting capabilities. Applications that do not embed untrusted content in sandboxed iframes are not affected. This issue is fixed in versions 41.10.4, 42.5.2, and 43.0.0.
Technical POC Analysis
Evidence base: GHSA-hq2x-r82h-9wj4 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-based applications that embed untrusted web content in sandboxed iframes are affected by a high-severity vulnerability that could allow attackers to access sensitive user data such as cookies and storage. No public exploit identified at time of analysis, but the flaw is unauthenticated and requires user interaction to trigger. Leadership should care because many internal and customer-facing applications rely on Electron, and exploitation could lead to unauthorized access to user accounts and data, though it requires specific application configurations.
Apply vendor patch.
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-89078
GHSA-hq2x-r82h-9wj4
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB