VDB
KO
MEDIUM 5.9

GHSA-9pf5-hg6p-4pwp

Electron: Permission Check Handler Receives Main Frame Origin Instead of Requesting Iframe Origin

Quick fix

GHSA-9pf5-hg6p-4pwp — electron: upgrade to the fixed version with the command below.

npm install electron@39.8.7

Details

### 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 [security@electronjs.org](mailto:security@electronjs.org)

Are you affected?

Enter the version of the package you're using.

Affected packages

npm / electron
Introduced in: 0 Fixed in: 39.8.7
Fix npm install electron@39.8.7
npm / electron
Introduced in: 40.0.0-alpha.1 Fixed in: 40.9.0
Fix npm install electron@40.9.0
npm / electron
Introduced in: 41.0.0-alpha.1 Fixed in: 41.2.0
Fix npm install electron@41.2.0
npm / electron
Introduced in: 42.0.0-alpha.1 Fixed in: 42.0.0-beta.1
Fix npm install electron@42.0.0-beta.1

References