CVE-2023-29198
CVE-2023-29198 is a medium-severity vulnerability in Electronjs Electron with a CVSS 3.x base score of 6.0. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-754.
Key facts
- Severity: Medium (CVSS 3.x base score 6.0)
- EPSS exploit prediction: 0% (39th percentile)
- Actively exploited: Not listed in CISA KEV
- Weakness: CWE-754
- Affected product: Electronjs Electron
- Published:
- Last modified:
Description
Electron is a framework which lets you write cross-platform desktop applications using JavaScript, HTML and CSS. Electron apps using `contextIsolation` and `contextBridge` are affected. This is a context isolation bypass, meaning that code running in the main world context in the renderer can reach into the isolated Electron context and perform privileged actions. This issue is only exploitable if an API exposed to the main world via `contextBridge` can return an object or array that contains a javascript object which cannot be serialized, for instance, a canvas rendering context. This would normally result in an exception being thrown `Error: object could not be cloned`. The app side workaround is to ensure that such a case is not possible. Ensure all values returned from a function exposed over the context bridge are supported. This issue has been fixed in versions `25.0.0-alpha.2`, `24.0.1`, `23.2.3`, and `22.3.6`.
Frequently asked questions
- What is CVE-2023-29198?
- Electron is a framework which lets you write cross-platform desktop applications using JavaScript, HTML and CSS. Electron apps using `contextIsolation` and `contextBridge` are affected. This is a context isolation bypass, meaning that code running in the main world context in the renderer can reach into the isolated Electron context and perform privileged actions. This issue is only exploitable if an API exposed to the main world via `contextBridge` can return an object or array that contains a javascript object which cannot be serialized, for instance, a canvas rendering context. This would normally result in an exception being thrown `Error: object could not be cloned`. The app side workaround is to ensure that such a case is not possible. Ensure all values returned from a function exposed over the context bridge are supported. This issue has been fixed in versions `25.0.0-alpha.2`, `24.0.1`, `23.2.3`, and `22.3.6`.
- How severe is CVE-2023-29198?
- CVE-2023-29198 has a CVSS 3.x base score of 6.0, rated medium severity. It is exploitable over network with high attack complexity, requires low privileges and no user interaction. Impact on confidentiality is low, integrity low, and availability low.
- Is CVE-2023-29198 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (39th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2023-29198?
- CVE-2023-29198 primarily affects Electronjs Electron. In total, 17 product configurations (CPEs) are listed as vulnerable; see the affected-products list for the exact versions.
- How do I fix CVE-2023-29198?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
- When was CVE-2023-29198 published?
- CVE-2023-29198 was published on 2023-09-06 and last updated on 2026-06-17.
References
- https://github.com/electron/electron/security/advisories/GHSA-p7v2-p9m8-qqg7
- https://www.electronjs.org/docs/latest/api/context-bridge#parameter--error--return-type-support
Affected products (17)
- cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:-:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha1:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha2:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha3:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha4:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha5:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha6:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:alpha7:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta1:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta2:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta3:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta4:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta5:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta6:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:24.0.0:beta7:*:*:*:node.js:*:*
- cpe:2.3:a:electronjs:electron:25.0.0:alpha1:*:*:*:node.js:*:*
More vulnerabilities in Electronjs Electron
- CVE-2017-16151 — Critical (CVSS 9.8): Based on details posted by the ElectronJS team; A remote code execution vulnerability has been discovered in Google…
- CVE-2018-1000118 — High (CVSS 8.8): Github Electron version Electron 1.8.2-beta.4 and earlier contains a Command Injection vulnerability in Protocol…
- CVE-2026-34780 — High (CVSS 8.3): Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. From versions…
- CVE-2026-34774 — High (CVSS 8.1): Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to…
- CVE-2018-15685 — High (CVSS 8.1): GitHub Electron 1.7.15, 1.8.7, 2.0.7, and 3.0.0-beta.6, in certain scenarios involving IFRAME elements and…
- CVE-2018-1000136 — High (CVSS 8.1): 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…
All CVEs affecting Electronjs Electron →
Other CWE-754 (Improper Check for Unusual or Exceptional Conditions) vulnerabilities
- CVE-2026-24054 — Critical (CVSS 10.0): Kata Containers is an open source project focusing on a standard implementation of lightweight Virtual Machines (VMs)…
- CVE-2021-0211 — Critical (CVSS 10.0): An improper check for unusual or exceptional conditions in Juniper Networks Junos OS and Junos OS Evolved Routing…
- CVE-2026-8091 — Critical (CVSS 9.8): Incorrect boundary conditions in the Audio/Video: Playback component. This vulnerability was fixed in Firefox 150,…
- CVE-2024-52316 — Critical (CVSS 9.8): Unchecked Error Condition vulnerability in Apache Tomcat. If Tomcat is configured to use a custom Jakarta…
- CVE-2024-7826 — Critical (CVSS 9.8): Improper Check for Unusual or Exceptional Conditions vulnerability in Webroot SecureAnywhere - Web Shield on Windows,…
- CVE-2023-37303 — Critical (CVSS 9.8): An issue was discovered in the CheckUser extension for MediaWiki through 1.39.3. In certain situations, an attempt to…
Browse all CWE-754 (Improper Check for Unusual or Exceptional Conditions) vulnerabilities →