VDB
KO
HIGH 8.8

GHSA-w222-53c6-c86p

Remote Code Execution in electron

Details

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', '--' ]) ```

Are you affected?

Enter the version of the package you're using.

Affected packages

npm / electron
Introduced in: 1.7.0 Fixed in: 1.7.11
Fix npm install electron@1.7.11
npm / electron
Introduced in: 1.6.0 Fixed in: 1.6.16
Fix npm install electron@1.6.16
npm / electron
Introduced in: 1.8.0 Fixed in: 1.8.2-beta.4
Fix npm install electron@1.8.2-beta.4

References