Electron: Local race condition in Squirrel.Mac update installation on macOS
### Impact On macOS, Electron bundles the Squirrel.Mac auto-update framework, whose privileged `ShipIt` helper performs the final step of an update as root. A local attacker could cause that helper to overwrite a different application's files, as root, instead of the app that started the update. Exploitation requires local access to the machine. Apps are only affected on macOS if they ship Squirrel.Mac-based auto-updates. Apps on other platforms, or that do not use Squirrel.Mac auto-updates, are not affected. ### Workarounds There are no app side workarounds, you must update to a patched version of Electron. ### Fixed Versions * `42.0.0-beta.2` * `41.10.5` * `39.8.10` ### For more information If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org)
GHSA-vv43-5jgx-7qv8
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: osv:GHSA-vv43-5jgx-7qv8
electron
Source reference: /affected/0/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 39.8.10
Source reference:
/affected/0/ranges - Prerequisites
- Not stated in this record
electron
Source reference: /affected/1/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 41.10.5
Source reference:
/affected/1/ranges - Prerequisites
- Not stated in this record
electron
Source reference: /affected/2/package/name
- Affected versions
- Not stated in this record
- Fixed versions
- 42.0.0-beta.2
Source reference:
/affected/2/ranges - Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
},
{
"fixed": "39.8.10"
}
]
}
],
"package": {
"name": "electron",
"purl": "pkg:npm/electron",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-vv43-5jgx-7qv8/GHSA-vv43-5jgx-7qv8.json"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "40.0.0-alpha.1"
},
{
"fixed": "41.10.5"
}
]
}
],
"package": {
"name": "electron",
"purl": "pkg:npm/electron",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-vv43-5jgx-7qv8/GHSA-vv43-5jgx-7qv8.json"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "42.0.0-alpha.1"
},
{
"fixed": "42.0.0-beta.2"
}
]
}
],
"package": {
"name": "electron",
"purl": "pkg:npm/electron",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-vv43-5jgx-7qv8/GHSA-vv43-5jgx-7qv8.json"
}
}
]- Related CVEs
- CVE-2026-102672
Source reference:
/aliases
Publisher severity
No explicit severity was provided.
- Event
- #30763 · Revision 1
- Added to Heist Feed
- Publisher date