Loading HuntDB...

CVE-2023-29198

MEDIUM
Published 2023-09-06T20:13:56.313Z
Actions:

Expert Analysis

Professional remediation guidance

Get tailored security recommendations from our analyst team for CVE-2023-29198. We'll provide specific mitigation strategies based on your environment and risk profile.

CVSS Score

V3.1
6.0
/10
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:L
Base Score Metrics
Exploitability: N/A Impact: N/A

EPSS Score

v2025.03.14
0.001
probability
of exploitation in the wild

There is a 0.1% chance that this vulnerability will be exploited in the wild within the next 30 days.

Updated: 2025-06-25
Exploit Probability
Percentile: 0.363
Higher than 36.3% of all CVEs

Attack Vector Metrics

Attack Vector
NETWORK
Attack Complexity
HIGH
Privileges Required
LOW
User Interaction
NONE
Scope
CHANGED

Impact Metrics

Confidentiality
LOW
Integrity
LOW
Availability
LOW

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`.

Available Exploits

No exploits available for this CVE.

Related News

No news articles found for this CVE.

Affected Products

GitHub Security Advisories

Community-driven vulnerability intelligence from GitHub

✓ GitHub Reviewed MODERATE

Electron context isolation bypass via nested unserializable return value

GHSA-p7v2-p9m8-qqg7

Advisory Details

### Impact 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. ### Workarounds This issue is exploitable under either of two conditions: * If an API exposed to the main world via `contextBridge` can return an object or array that contains a JS 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`. * If an API exposed to the main world via `contextBridge` has a return value that throws a user-generated exception while being sent over the bridge, for instance a dynamic getter property on an object that throws an error when being computed. 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](https://www.electronjs.org/docs/latest/api/context-bridge#parameter--error--return-type-support) and that any objects returned from functions do not have dynamic getters that can throw exceptions. Auditing your exposed API is likely to be quite difficult so we strongly recommend you update to a patched version of Electron. ### Fixed Versions * `25.0.0-alpha.2` * `24.0.1` * `23.2.3` * `22.3.6` ### For more information If you have any questions or comments about this advisory, email us at [[email protected]](mailto:[email protected])

Affected Packages

npm electron
ECOSYSTEM: ≥0 <22.3.6
npm electron
ECOSYSTEM: ≥23.0.0-alpha.1 <23.2.3
npm electron
ECOSYSTEM: ≥24.0.0-alpha.1 <24.0.1
npm electron
ECOSYSTEM: ≥25.0.0-alpha.1 <25.0.0-alpha.2

CVSS Scoring

CVSS Score

5.0

CVSS Vector

CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:L/I:L/A:L

Advisory provided by GitHub Security Advisory Database. Published: September 6, 2023, Modified: September 6, 2023

References

Published: 2023-09-06T20:13:56.313Z
Last Modified: 2024-09-26T15:12:58.704Z
Copied to clipboard!