GitHub Advisoryadvisory · npm

GHSA-w222-53c6-c86p Remote Code Execution in electron

HIGH Published 2018-01-23 Modified 2021-06-10 Official page ↗
Aliases
CVE-2018-1000006
Ecosystem
npm
Packages
electron
Severity
High
CVSS vector
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weaknesses
CWE-78
Reviewed
2020-06-16

Affected packages

• npm electron: >= 1.7.0, < 1.7.11 → fixed in 1.7.11 • npm electron: >= 1.6.0, < 1.6.16 → fixed in 1.6.16 • npm electron: >= 1.8.0, < 1.8.2-beta.4 → fixed in 1.8.2-beta.4

Description

Affected versions of `electron` may be susceptible to a remote code execution flaw when certain conditions are met: 1. The electron application is running on Windows. 2. The electron application registers as the default handler for a protocol, such as `nodeapp://`. This vulnerability is caused by a failure to sanitize additional arguments to chromium in the command line handler for Electron. MacOS and Linux are not vulnerable. Recommendation Update electron to a version that is not vulnerable. If updating is not possible, the electron team has provided the following guidance: If for some reason you are unable to upgrade your Electron version, you can append `--` as the last argument when calling `app.setAsDefaultProtocolClient`, which prevents Chromium from parsing further options. The double dash `--` signifies the end of command options, after which only positional parameters are accepted. ``` app.setAsDefaultProtocolClient(protocol, process.execPath, [ '--your-switches-here', '--' ]) ```

Related

Alias · CVE (1)

  • CVE-2018-1000006 GitHub Electron versions 1.8.2-beta.3 and earlier, 1.7.10 and earlier, 1.6.15 and earlier has a vulnerability in the protocol handler,… vulnerability

Weakness · CWE (1)

  • CWE-78 Improper Neutralization of Special Elements used in an OS Command weakness

References