Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCompromise renderer via untrusted content
-
ExploitWrite attacker-controlled preload cache entry
-
ExecutionElectron reuses poisoned cache on next load
-
ImpactExecute code in privileged preload context
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
|
| Exploitation Conditions | Two concrete prerequisites must both hold: (1) the Electron application must load untrusted content - the advisory explicitly states apps that do not load untrusted content are NOT affected; and (2) the attacker must already control a compromised renderer process (reflected by PR:L and AV:L), meaning renderer-level code execution must be obtained first, e.g. by chaining a separate renderer vulnerability. The specific technical condition is that the sandboxed preload code cache does not verify that a cached entry matches the preload it was served for, allowing the renderer to write a cache entry that is later reused in the preload context. Limiting factors: only Electron versions >=42.3.3,<42.10.0, >=43.0.0-beta.1,<43.5.0, and >=44.0.0-alpha.1,<44.0.0-beta.6 are affected; there are no app-side workarounds (patching is mandatory); and the attack is local/intra-application rather than a standalone remote vector. |
| Impact | This is a genuinely high-impact vulnerability but one gated behind meaningful preconditions, so it warrants prompt patching rather than emergency response. The vendor CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H, 8.8) correctly models this as a local, low-complexity privilege-escalation requiring an already-compromised renderer (PR:L) that then crosses the sandbox boundary into the privileged preload context (S:C, C:H/I:H/A:H). It is NOT remotely exploitable against a healthy app on its own - AV:L and the description ('a compromised renderer could write attacker-controlled cache data') agree that the attacker must first obtain renderer-level code execution, typically by chaining a separate renderer bug or by the app loading untrusted web content. All exploitation signals point low: EPSS is 0.09% (0th percentile), the vulnerability is NOT in CISA KEV, SSVC records Exploitation=none and Automatable=no, and no public exploit code was identified. These are consistent with each other - there is no conflict between a high CVSS and the low real-world exploitation probability, because the 8.8 reflects the severe technical impact (SSVC Technical Impact=total) while EPSS/SSVC reflect that it is not a standalone, automatable, or currently-exploited bug. The realistic priority is: patch promptly if your Electron app loads untrusted content, de-prioritize if it only ever loads bundled first-party content (the advisory explicitly states such apps are not affected). |
| Exploit ScenarioDerived | An attacker lures a user of an Electron desktop app that loads untrusted web content (or exploits a separate renderer flaw) to gain code execution inside the sandboxed renderer. The compromised renderer writes an attacker-controlled entry into the sandboxed preload code cache, which Electron fails to validate against the preload it was served for; on a subsequent load Electron executes that poisoned cache in the more privileged preload context, escalating out of the renderer sandbox. No public exploit code was identified at time of analysis, and no active exploitation is recorded. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv2 – Oct 08, 2026
Code cache poisoning in Electron's sandboxed preload machinery allows a compromised renderer to get its own code executed in the more privileged preload context on a later load, affecting desktop applications built on Electron 42.3.3 through versions prior to 42.10.0, 43.0.0-beta.1 through versions prior to 43.5.0, and 44.0.0-alpha.1 through versions prior to 44.0.0-beta.6. Two prerequisites must both hold: the application must load untrusted content (the vendor explicitly states apps that do not load untrusted content are unaffected), and the attacker must already control a renderer process, so this is a local, low-privilege escalation step (CVSS 3.1 vector AV:L/PR:L) rather than a standalone remote attack. Vendor-released patches are available in 42.10.0, 43.5.0, and 44.0.0-beta.6, there are no app-side workarounds, EPSS is 0.09% (0th percentile), and no public exploit code or confirmed active exploitation (no CISA KEV listing) was identified at time of analysis.
Earlier versions of this analysis (1)
Cache poisoning in Electron's sandboxed preload code cache allows an attacker who has already compromised a renderer process to execute attacker-supplied code in the more privileged preload context on a subsequent load, affecting Electron 42.3.3 through 42.10.0, 43.0.0-beta.1 through 43.5.0, and 44.0.0-alpha.1 through 44.0.0-beta.6. Only applications that load untrusted content are affected; apps that render exclusively trusted first-party content are explicitly out of scope, and the CVSS vector (AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H, base 7.8) frames this as a higher-complexity, low-privilege sandbox-escape primitive with a scope change rather than remote initial access. There is no public exploit identified at time of analysis and no evidence of exploitation in CISA KEV; vendor-released patches exist in 42.10.0, 43.5.0, and 44.0.0-beta.6, and the advisory states there are no application-side workarounds.
RemediationAI
Vendor-released patch: upgrade Electron to 42.10.0, 43.5.0, or 44.0.0-beta.6 (or a later release in the corresponding line) - the advisory states plainly that there are no app-side workarounds and that updating to a patched Electron version is mandatory. Because Electron is embedded in distributed desktop applications, end users cannot fix this themselves; application vendors must rebuild and redistribute their installers with a patched runtime, and version-check the bundled Electron in shipped builds rather than assuming a dependency bump in source is sufficient. If immediate patching is impossible, the only reliable compensating control is to eliminate the exposure precondition: do not load untrusted or third-party remote content in Electron windows (restrict BrowserWindow and webview navigation to an allowlisted set of origins, and disable the webview tag entirely) - the trade-off is loss of any feature that renders remote or user-supplied content, and remote-content blocking is brittle if the app has any navigation path that can be influenced by an attacker. Enabling contextIsolation and the Chromium sandbox for all renderers limits post-exploitation reach but does not fix the cache-poisoning logic itself and should be treated only as harm reduction. Given the requirement for a pre-existing renderer compromise, prioritizing this patch alongside any other renderer-level (V8/Blink) fixes reduces the chaining risk. Tracking references: GHSA-qmv3-fv6v-rmhq, PR https://github.com/electron/electron/pull/52480, and commits 000453e399bd1dee5e86376cdd9ece5fc071e601, 25ba8be57c65a83d8c14ebb8aa37693df17a04f3, c38d6fd68756f04647ea857bdb6a2abec332e217, and 06a12a87a23f40abbf580fc7a552bc1189812c45.
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
Electron preload scripts execute inside the renderer but with elevated privileges - access to Node.js APIs and Electron/Node modules - even when the Chromium sandbox is enabled. To reduce startup cost, Electron maintains a code cache for sandboxed preload scripts, keyed by an identifier derived from the preload's file path (IdForWebPreferencesPreload) and a source hash. Before the fix, the browser process accepted cache blobs supplied through the SetPreloadCodeCache path without verifying that the cache identifier corresponded to a preload script actually served to that frame, and it trusted a renderer-provided source hash rather than validating the association itself. This is a CWE-20 improper input validation flaw: renderer-originated input (cache ID, source hash, blob contents) was consumed without adequate validation of its provenance. A compromised renderer could therefore write attacker-controlled cache data under the identifier of a preload path that would be loaded later; on a subsequent navigation or window creation, Electron would stream that cached blob back and V8 could reuse it for the real preload, executing attacker code in the preload context with its Node/Electron privileges rather than in the confined renderer context. The CVSS vector shows scope change (S:C) with high confidentiality, integrity, and availability impact, consistent with crossing from the untrusted renderer into a privileged context. The fix (PR 52480 and commits 000453e3, 25ba8be5, c38d6fd6, and 06a12a87) removes the renderer-facing cache write handling from the WebContents and browser-client paths, consolidates construction through renderer_startup_data::BuildForFrame, and removes the direct preload code-cache plumbing that lacked a served-preload verification check.
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:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
Requires an already-compromised renderer (PR:L, AV:L local to the process) and crosses the sandbox into the privileged preload context (S:C) with total impact (C/I/A:H).
Primary rating from Vendor (GitHub_M).
CVSS VectorNVD
Lifecycle Timeline
3DescriptionNVD
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. From 42.3.3 until 42.10.0, 43.5.0, and 44.0.0-beta.6, Electron's sandboxed preload code cache did not verify that a cached entry matched the preload it was served for. A compromised renderer could write attacker-controlled cache data and cause Electron to reuse it for a later load, executing the renderer's code in the more privileged preload context. The issue affects applications that load untrusted content. This issue is fixed in versions 42.10.0, 43.5.0, and 44.0.0-beta.6.
Blast Radius
ecosystem impact- 2 npm packages depend on electron (2 direct, 0 indirect)
Ecosystem-wide dependent count for version 42.3.3.
Technical POC Analysis
Bug class: CWE-20 (Improper Input Validation), with the advisory also tagging CWE-345 (Insufficient Verification of Data Authenticity) - the Electron advisory lists both weaknesses against CVE-2026-1…
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Electron desktop applications built on versions 42.3.3 through 42.10.0, 43.0.0-beta.1 through 43.5.0, and 44.0.0-alpha.1 through 44.0.0-beta.6 contain a high-severity flaw that can let an already compromised renderer escalate into the more privileged preload context, particularly if the application loads untrusted content. This matters to product and security leadership because affected applications cannot be fully mitigated without upgrading, though exploitation requires local low-privileged access and no public exploit or active exploitation has been identified. Vendor patches are available in 42.10.0, 43.5.0, and 44.0.0-beta.6.
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
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-89179
GHSA-qmv3-fv6v-rmhq
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB