Electron: Use-after-free in offscreen child window paint callback (electron electron)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.45 % · percentile 39 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Modified
Description
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to versions 39.8.1, 40.7.0, and 41.0.0, apps that use offscreen rendering and allow child windows via window.open() may be vulnerable to a use-after-free. If the parent offscreen WebContents is destroyed while a child window remains open, subsequent paint frames on the child dereference freed memory, which may lead to a crash or memory corruption. Apps are only affected if they use offscreen rendering (webPreferences.offscreen: true) and their setWindowOpenHandler permits child windows. Apps that do not use offscreen rendering, or that deny child windows, are not affected. This issue has been patched in versions 39.8.1, 40.7.0, and 41.0.0.
Weaknesses (CWE)
References
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | HIGH 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | GitHub_M |
| CVSS 3.1 | HIGH 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | redhat-SADP |
| CVSS 3.1 | HIGH 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · security-advisories@github.com (Secondary) |
| CVSS 3.1 | HIGH 8.1 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · 0b0ca135-0b70-47e7-9f44-1890c2a1c46c (Secondary) |
Advisories
- GHSA-532v-xpq5-8h95 — Electron: Use-after-free in offscreen child window paint callback
European references
- ENISA EUVD · EUVD-2026-18947
- GCVE · GCVE-0-2026-34774
Affected configurations (NVD CPE)
cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*< 39.8.1cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*≥ 40.0.0 < 40.7.0cpe:2.3:a:electronjs:electron:41.0.0:alpha1:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:alpha2:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:alpha3:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:alpha4:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:alpha5:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:alpha6:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta1:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta2:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta3:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta4:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta5:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta6:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta7:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:41.0.0:beta8:*:*:*:node.js:*:*
Affected products
| Product | Versions |
|---|---|
| electron · electron | affected < 39.8.1 ; affected >= 40.0.0-alpha.1, < 40.7.0 ; affected >= 41.0.0-alpha.1, < 41.0.0 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |