CVE-2024-39698
Code Signing Bypass on Windows in electron-updater < 6.3.0-alpha.6
- State
- Published
- Severity
- 7.5 High
- Published
- Jul 9, 2024
- Updated
- Aug 2, 2024
- Reserved
- Jun 27, 2024
Description
electron-updater allows for automatic updates for Electron apps. The file `packages/electron-updater/src/windowsExecutableCodeSignatureVerifier.ts` implements the signature validation routine for Electron applications on Windows. Because of the surrounding shell, a first pass by `cmd.exe` expands any environment variable found in command-line above. This creates a situation where `verifySignature()` can be tricked into validating the certificate of a different file than the one that was just downloaded. If the step is successful, the malicious update will be executed even if its signature is invalid. This attack assumes a compromised update manifest (server compromise, Man-in-the-Middle attack if fetched over HTTP, Cross-Site Scripting to point the application to a malicious updater server, etc.). The patch is available starting from 6.3.0-alpha.6.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 7.5 High | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H | GitHub_M |
Weaknesses
- CWE-154 Improper Neutralization of Variable Name Delimiters
Affected Products
| Product | Versions |
|---|---|
electron-builderelectron-userland |
|
References
- https://github.com/electron-userland/electron-builder/security/advisories/GHSA-9jxc-qjr9-vjxq
- https://github.com/electron-userland/electron-builder/pull/8295
- https://github.com/electron-userland/electron-builder/commit/ac2e6a25aa491c1ef5167a552c19fc2085cd427f
- https://github.com/electron-userland/electron-builder/blob/140e2f0eb0df79c2a46e35024e96d0563355fc89/packages/electron-updater/src/windowsExecutableCodeSignatureVerifier.ts#L35-L41
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.