Electron: openExternal permission requests can be attributed to the wrong origin
Published 22 Oct 2026 · Updated 22 Oct 2026
Affected packages
- Affected
- <42.11.3
- Fixed in
- 42.11.3
npm install electron@42.11.3- Affected
- >=43.0.0-alpha.1 <43.7.0
- Fixed in
- 43.7.0
npm install electron@43.7.0- Affected
- >=44.0.0-alpha.1 <44.3.0
- Fixed in
- 44.3.0
npm install electron@44.3.0- Affected
- >=45.0.0-alpha.1 <45.0.0-alpha.5
- Fixed in
- 45.0.0-alpha.5
npm install electron@45.0.0-alpha.5Details
Impact
Requests to open external protocol URLs could be attributed to a document other than the one that asked for them, so the requestingUrl passed to session.setPermissionRequestHandler was a trusted origin for a launch untrusted content had requested. An origin-based handler could therefore let untrusted content launch an OS-registered external application.
Apps are only affected if they grant openExternal based on the requesting origin and let untrusted content open or navigate windows. Apps whose permission handler denies openExternal for untrusted content are not affected.
Workarounds
Deny the openExternal permission for untrusted content, or deny the windows it opens with setWindowOpenHandler.
Fixed Versions
45.0.0-alpha.544.3.043.7.042.11.3
For more information
If you have any questions or comments about this advisory, email us at [security@electronjs.org](mailto:security@electronjs.org)
Is GHSA-997q-gvvc-jwmx in any of your client repos?
Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected electron, and gives you the command that fixes it.
References
- Linkgithub.com/electron/electron/security/advisories/GHSA-997q-gvvc-jwmx
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-114121
- Linkgithub.com/electron/electron/pull/53699
- Linkgithub.com/electron/electron/pull/53698
- Linkgithub.com/electron/electron/pull/53697
- Linkgithub.com/electron/electron/pull/53696
- Linkgithub.com/electron/electron/pull/53682
- Linkgithub.com/electron/electron/commit/e3a400911084537bce7380ffea8af939572ce8dd
- Linkgithub.com/electron/electron/commit/e0a20d5277b567aea8603f8e9852a4341407a586
- Linkgithub.com/electron/electron/commit/92a783952891805f2f82f344c40a6917b98a7d98
- Linkgithub.com/electron/electron/commit/8aa5414f73792ed3b2e3f9ab6391b1832e6dc2c3
- Linkgithub.com/electron/electron/commit/25057643bf6d9a20bad69e45707551ccf546f5ce
- Linkgithub.com/electron/electron/releases/tag/v42.11.3
- Linkgithub.com/electron/electron/releases/tag/v43.7.0
- Linkgithub.com/electron/electron/releases/tag/v44.3.0
- Linkgithub.com/electron/electron/releases/tag/v45.0.0-alpha.5
- Packagegithub.com/electron/electron
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.