Packages / electron / Security

HighVulnerabilityGHSA-jfqg-hf23-qpw2CVE-2026-34780Published 3 Apr 2026

Electron: Context Isolation bypass via contextBridge VideoFrame transfer

Affected releases · electron

  • 40.x40.0.0 – 40.6.1Fixed in 40.7.0
  • 39.x39.0.0 – 39.7.0Fixed in 39.8.0

On 40.x, the newest line:

npm install electron@40.7.0
45.x
  1. Not affected

    45.0.0

    1 release, latest

40.x
  1. Affected

    40.0.0 – 40.6.1

    9 releases

  2. Fixed

    40.7.0 – 40.10.6

    17 releases

39.x
  1. Affected

    39.0.0 – 39.7.0

    20 releases

  2. Fixed

    39.8.0 – 39.8.10

    11 releases

1131 stable releases of electron, oldest to newest, one row per major.

Is your project affected?

Paste your package.json, or type the range you declare for electron. It is read in your browser and sent nowhere.

What happens

Impact

Apps that pass VideoFrame objects (from the WebCodecs API) across the contextBridge are vulnerable to a context isolation bypass. An attacker who can execute JavaScript in the main world (for example, via XSS) can use a bridged VideoFrame to gain access to the isolated world, including any Node.js APIs exposed to the preload script.

Apps are only affected if a preload script returns, resolves, or passes a VideoFrame object to the main world via contextBridge.exposeInMainWorld(). Apps that do not bridge VideoFrame objects are not affected.

Workarounds

Do not pass VideoFrame objects across contextBridge. If an app needs to transfer video frame data, serialize it to an ArrayBuffer or ImageBitmap before bridging.

Fixed Versions

  • 41.0.0-beta.8

  • 40.7.0

  • 39.8.0

For more information

If there are any questions or comments about this advisory, please email security@electronjs.org