GHSA-v3j7-r9gq-3gjw

Electron: Custom protocol with supportFetchAPI but not corsEnabled allows cross-origin reads

At a glance

Published
Updated
CVE
CVE-2026-70604
CVSS_V3
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N

Description

### Impact A custom scheme registered with `supportFetchAPI: true` but without `corsEnabled: true` was not subject to CORS enforcement. A page loaded from a remote origin could therefore `fetch()` or `XMLHttpRequest` that scheme cross-origin and read the full response body, rather than the read being blocked. Apps that serve sensitive data from such a scheme and load remote or untrusted content in a renderer are affected. Apps that set `corsEnabled: true`, or that do not load untrusted content, are not affected. ### Workarounds Set `corsEnabled: true` on schemes that must enforce CORS, and validate the request `Origin` in your protocol handler before returning sensitive data. ### Fixed Versions * `42.0.0` * `41.4.0` * `40.9.3` * `39.8.10` ### For more information If you have any questions or comments about this advisory, email Electron at [security@electronjs.org](mailto:security@electronjs.org)

Affected packages

PackageVersions
npm · electronintroduced 42.0.0-alpha.1, fixed 42.0.0
npm · electronintroduced 41.0.0-alpha.1, fixed 41.4.0
npm · electronintroduced 40.0.0-alpha.1, fixed 40.9.3
npm · electronintroduced 0, fixed 39.8.10

References

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database