{"id":"CVE-2026-102672","state":"PUBLISHED","title":"Electron: Local race condition in Squirrel.Mac update installation on macOS","description":"Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 39.8.10, 41.10.5, and 42.0.0-beta.2, Electron applications on macOS that use Squirrel.Mac-based automatic updates are vulnerable to a local race in the privileged ShipIt helper. The helper did not bind the validated update target to one canonical application-bundle path for the full installation, allowing a local attacker to redirect the root-level write so that it overwrites another application's files instead of the application that initiated the update. Applications on other platforms and macOS applications that do not use Squirrel.Mac-based automatic updates are not affected. This issue is fixed in versions 39.8.10, 41.10.5, and 42.0.0-beta.2.","publishedAt":"2026-10-13T15:52:46.436Z","updatedAt":"2026-10-13T20:22:22.127Z","severity":{"score":6.7,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H","source":"GitHub_M"},"assigner":"GitHub_M","products":["electron electron"],"affected":[{"vendor":"electron","product":"electron","versions":[{"version":"< 39.8.10","status":"affected"},{"version":">= 40.0.0-alpha.1, < 41.10.5","status":"affected"},{"version":">= 42.0.0-alpha.1, < 42.0.0-beta.2","status":"affected"}]}],"references":["https://github.com/electron/electron/security/advisories/GHSA-vv43-5jgx-7qv8","https://github.com/electron/electron/pull/50745","https://github.com/electron/electron/commit/01faabfc250801a980fc94d64608046c67fc1cd9","https://github.com/electron/electron/commit/15e2928a5c5f01759107b414010e220d90d59cef","https://github.com/electron/electron/commit/a0f9ff4cc0340545008424232d49caadd9c0c767","https://github.com/electron/electron/commit/b8f25c4cedb2e0f5f475912b709aba19c57c26be","https://github.com/electron/electron/releases/tag/v39.8.10","https://github.com/electron/electron/releases/tag/v41.10.5","https://github.com/electron/electron/releases/tag/v42.0.0-beta.2"],"weaknesses":["CWE-367"],"ingestedAt":"2026-10-29T20:10:13.529Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/102xxx/CVE-2026-102672.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-102672","state":"PUBLISHED","datePublished":"2026-10-13T15:52:46.436Z","dateUpdated":"2026-10-13T20:22:22.127Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2026-09-29T16:10:04.075Z"},"containers":{"cna":{"title":"Electron: Local race condition in Squirrel.Mac update installation on macOS","descriptions":[{"lang":"en","value":"Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. Prior to 39.8.10, 41.10.5, and 42.0.0-beta.2, Electron applications on macOS that use Squirrel.Mac-based automatic updates are vulnerable to a local race in the privileged ShipIt helper. The helper did not bind the validated update target to one canonical application-bundle path for the full installation, allowing a local attacker to redirect the root-level write so that it overwrites another application's files instead of the application that initiated the update. Applications on other platforms and macOS applications that do not use Squirrel.Mac-based automatic updates are not affected. This issue is fixed in versions 39.8.10, 41.10.5, and 42.0.0-beta.2."}],"affected":[{"vendor":"electron","product":"electron","versions":[{"version":"< 39.8.10","status":"affected"},{"version":">= 40.0.0-alpha.1, < 41.10.5","status":"affected"},{"version":">= 42.0.0-alpha.1, < 42.0.0-beta.2","status":"affected"}]}],"references":[{"url":"https://github.com/electron/electron/security/advisories/GHSA-vv43-5jgx-7qv8","name":"https://github.com/electron/electron/security/advisories/GHSA-vv43-5jgx-7qv8","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/electron/electron/pull/50745","name":"https://github.com/electron/electron/pull/50745","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/commit/01faabfc250801a980fc94d64608046c67fc1cd9","name":"https://github.com/electron/electron/commit/01faabfc250801a980fc94d64608046c67fc1cd9","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/commit/15e2928a5c5f01759107b414010e220d90d59cef","name":"https://github.com/electron/electron/commit/15e2928a5c5f01759107b414010e220d90d59cef","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/commit/a0f9ff4cc0340545008424232d49caadd9c0c767","name":"https://github.com/electron/electron/commit/a0f9ff4cc0340545008424232d49caadd9c0c767","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/commit/b8f25c4cedb2e0f5f475912b709aba19c57c26be","name":"https://github.com/electron/electron/commit/b8f25c4cedb2e0f5f475912b709aba19c57c26be","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/releases/tag/v39.8.10","name":"https://github.com/electron/electron/releases/tag/v39.8.10","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/releases/tag/v41.10.5","name":"https://github.com/electron/electron/releases/tag/v41.10.5","tags":["x_refsource_MISC"]},{"url":"https://github.com/electron/electron/releases/tag/v42.0.0-beta.2","name":"https://github.com/electron/electron/releases/tag/v42.0.0-beta.2","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"HIGH","attackVector":"LOCAL","availabilityImpact":"HIGH","baseScore":6.7,"baseSeverity":"MEDIUM","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"LOW","scope":"UNCHANGED","userInteraction":"REQUIRED","vectorString":"CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-367","lang":"en","description":"CWE-367: Time-of-check Time-of-use (TOCTOU) Race Condition","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2026-10-13T15:52:46.436Z"},"source":{"advisory":"GHSA-vv43-5jgx-7qv8","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-10-13T20:14:15.326288Z","id":"CVE-2026-102672","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-13T20:22:22.127Z"}}]}}}