GitHub Advisoryadvisory · npm
GHSA-9pf5-hg6p-4pwp Electron: Permission Check Handler Receives Main Frame Origin Instead of Requesting Iframe Origin
MEDIUM
Official page ↗
- Aliases
- CVE-2026-70599
- Ecosystem
- npm
- Packages
- electron
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
- Weaknesses
- CWE-346
- Reviewed
- 2026-08-05
Affected packages
• npm electron: < 39.8.7 → fixed in 39.8.7
• npm electron: >= 40.0.0-alpha.1, < 40.9.0 → fixed in 40.9.0
• npm electron: >= 41.0.0-alpha.1, < 41.2.0 → fixed in 41.2.0
• npm electron: >= 42.0.0-alpha.1, < 42.0.0-beta.1 → fixed in 42.0.0-beta.1
Description
Impact
For serial-port and media (camera / microphone) permission checks made from an iframe, the `requestingOrigin` passed to `session.setPermissionCheckHandler` was the top-level frame's origin rather than the requesting frame's. Origin-based handler logic could therefore grant a cross-origin iframe device access intended only for the top-level origin.
Apps are only affected if they use `setPermissionCheckHandler` with origin-based logic and embed cross-origin iframes with delegated device permissions. Apps that base the decision on `details.securityOrigin`, or that do not embed such iframes, are not affected.
Workarounds
Check `details.securityOrigin` instead of `requestingOrigin` for these permissions, or do not delegate device permissions to untrusted iframes.
Fixed Versions
• `42.0.0-beta.1`
• `41.2.0`
• `40.9.0`
• `39.8.7`
For more information
If you have any questions or comments about this advisory, email Electron at [email protected]
Related
Alias · CVE (1)
- CVE-2026-70599 Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. vulnerability
Weakness · CWE (1)
- CWE-346 Origin Validation Error weakness