Vulnerability · Published Jun 13, 2022 · Assigned by GitHub_M
CVE-2022-29247Exposure of Resource to Wrong Sphere in Electron
Low 2.2
In plain English
A low-severity security flaw in electron from electron. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 1.1% (higher than 65% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
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`.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | electron | 15.5.5 | GHSA-mq8j-3h7h-p8g7 |
| npm | electron | 16.2.6 | GHSA-mq8j-3h7h-p8g7 |
| npm | electron | 17.2.0 | GHSA-mq8j-3h7h-p8g7 |
| npm | electron | 18.0.0-beta.6 | GHSA-mq8j-3h7h-p8g7 |
Affected products (as reported)
Weakness: CWE-668 · Vector: CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:N
References
- https://github.com/electron/electron/security/advisories/GHSA-mq8j-3h7h-p8g7 x_refsource_CONFIRM