Electron: Out-of-package code execution when launched with arbitrary cwd (electron electron)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.49 % · percentile 42 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Modified
Description
Electron is a framework which lets you write cross-platform desktop applications using JavaScript, HTML and CSS. Electron apps that are launched as command line executables are impacted. Specifically this issue can only be exploited if the following conditions are met: 1. The app is launched with an attacker-controlled working directory and 2. The attacker has the ability to write files to that working directory. This makes the risk quite low, in fact normally issues of this kind are considered outside of our threat model as similar to Chromium we exclude Physically Local Attacks but given the ability for this issue to bypass certain protections like ASAR Integrity it is being treated with higher importance. This issue has been fixed in versions:`26.0.0-beta.13`, `25.4.1`, `24.7.1`, `23.3.13`, and `22.3.19`. There are no app side workarounds, users must update to a patched version of Electron.
Weaknesses (CWE)
- CWE-94 — Improper Control of Generation of Code
References
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:L | GitHub_M |
| CVSS 3.1 | MEDIUM 6.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:L/I:H/A:L | NVD · security-advisories@github.com (Secondary) |
| CVSS 3.1 | MEDIUM 6.6 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:L | NVD · nvd@nist.gov (Primary) |
Advisories
- GHSA-7x97-j373-85x5 — Electron vulnerable to out-of-package code execution when launched with arbitrary cwd
European references
- ENISA EUVD · EUVD-2023-2462
- GCVE · GCVE-0-2023-39956
CERT-FR advisories
- CERTFR-2023-AVI-0743 — Multiples vulnérabilités dans les produits Microsoft · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*< 22.3.9cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*≥ 23.0.0 < 23.3.13cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*≥ 24.0.0 < 24.7.1cpe:2.3:a:electronjs:electron:*:*:*:*:*:node.js:*:*≥ 25.0.0 < 25.5.0cpe:2.3:a:electronjs:electron:26.0.0:alpha1:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha2:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha3:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha4:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha5:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha6:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha7:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:alpha8:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta1:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta10:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta11:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta12:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta2:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta3:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta4:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta5:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta6:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta7:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta8:*:*:*:node.js:*:*cpe:2.3:a:electronjs:electron:26.0.0:beta9:*:*:*:node.js:*:*
Affected products
| Product | Versions |
|---|---|
| electron · electron | affected < 22.3.19 ; affected >= 23.0.0, < 23.3.13 ; affected >= 24.0.0, < 24.7.1 ; affected >= 25.0.0, < 25.4.1 ; affected >= 26.0.0-beta.1, < 26.0.0-beta.13 |
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 |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| 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 |