CVE-2022-29247
What it is
Electron is a framework for writing cross-platform desktop applications using JavaScript (JS), HTML, and CSS. A vulnerability in versions prior to 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 allows a renderer with JS execution to obtain access to a new renderer process with `nodeIntegrationInSubFrames` enabled which in turn allows effective access to `ipcRenderer`. The `nodeIntegrationInSubFrames` option does not implicitly grant Node.js access. Rather, it depends on the existing sandbox setting. If an application is sandboxed, then `nodeIntegrationInSubFrames` just gives access to the sandboxed renderer APIs, which include `ipcRenderer`. If the application then additionally exposes IPC messages without IPC `senderFrame` validation that perform privileged actions or return confidential data this access to `ipcRenderer` can in turn compromise your application / user even with the sandbox enabled. Electron versions 18.0.0-beta.6, 17.2.0, 16.2.6, and 15.5.5 contain a fix for this issue. As a workaround, ensure that all IPC message handlers appropriately validate `senderFrame`.
At a glance
- Exploitability
- Can be exploited over the network with an admin-level account. Limited direct impact.
- Exploit odds
- 1.1% chance of exploitation in the next 30 days (EPSS).
- Fix
- A patch, advisory or fixed version is referenced. Upgrade or apply it.
Timeline
- PublishedDisclosed publicly on CVE.org and NVD
- Last updatedMost recent change to the record
Why it ranks here
- Exploited in the wild: no, CISA does not list it.
- Exploit odds: 1.1% in the next 30 days (EPSS).
- Severity: 2.2 LOW (CVSS).
- Fix: a patch or advisory is linked.
Details
- Published
- Last modified
- Exploit probability
- 1.1% · EPSS, next 30 days
- Weakness
- CWE-668 · Resource exposure
- Record status
- Modified
Affected
- Electronjs Electron < 15.5.5
- Electronjs Electron < 16.2.6
- Electronjs Electron < 17.2.0
- Electronjs Electron 16.0.0
- Electronjs Electron 17.0.0
- Electronjs Electron 18.0.0
Attack profile CVSS 3.1 · 2.2
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- High
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- Low
- Integrity
- None
- Availability
- None
Raw vector
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N
Is it in your code?
Hand this to your coding agent. It searches your project for the affected products and checks versions. Nothing leaves your machine.
Read https://cve-list.com/agent/cve/CVE-2022-29247.md and follow it. Check whether this project is affected by CVE-2022-29247. Read only. Don't change anything and don't upload my code. Tell me yes, no or not sure, with the file as proof.
Fix and advisories
- https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7
- https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7