8.4 HIGH
- CVSS version: 3.1
- Attack vector (AV): NETWORK
- Attack complexity (AC): HIGH
- Privileges required (PR): NONE
- User interaction (UI): REQUIRED
- Scope (S): CHANGED
- Confidentiality impact (C): HIGH
- Integrity impact (I): HIGH
- Availability impact (A): HIGH
Electron: Context Isolation bypass via contextBridge VideoFrame transfer
Electron is a framework for writing cross-platform desktop applications using JavaScript, HTML and CSS. From versions 39.0.0-alpha.1 to before 39.8.0, 40.0.0-alpha.1 to before 40.7.0, and 41.0.0-alpha.1 to before 41.0.0-beta.8, 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. This issue has been patched in versions 39.8.0, 40.7.0, and 41.0.0-beta.8.
References
-
https://github.com/electron/electron/security/advisories/GHSA-jfqg-hf23-qpw2 x_refsource_CONFIRM
Affected products
- ==>= 40.0.0-alpha.1, < 40.7.0
- ==>= 41.0.0-alpha.1, < 41.0.0-beta.8
- ==>= 39.0.0-alpha.1, < 39.8.0
Matching in nixpkgs
pkgs.electron
Cross platform desktop application shell
pkgs.electron_35
Cross platform desktop application shell
pkgs.electron_36
Cross platform desktop application shell
pkgs.electron_37
Cross platform desktop application shell
pkgs.electron_38
Cross platform desktop application shell
pkgs.electron_39
Cross platform desktop application shell
pkgs.electron_40
Cross platform desktop application shell
pkgs.electron_41
Cross platform desktop application shell
pkgs.electron-bin
Cross platform desktop application shell
pkgs.gfn-electron
Linux Desktop client for Nvidia's GeForce NOW game streaming service
pkgs.electron-cash
Bitcoin Cash SPV Wallet
pkgs.electron-mail
ElectronMail is an Electron-based unofficial desktop client for ProtonMail
pkgs.electron-fiddle
Easiest way to get started with Electron
pkgs.electron_33-bin
Cross platform desktop application shell
pkgs.electron_34-bin
Cross platform desktop application shell
pkgs.electron_35-bin
Cross platform desktop application shell
pkgs.electron_36-bin
Cross platform desktop application shell
pkgs.electron_37-bin
Cross platform desktop application shell
pkgs.electron_38-bin
Cross platform desktop application shell
pkgs.electron_39-bin
Cross platform desktop application shell
pkgs.electron_40-bin
Cross platform desktop application shell
pkgs.electron_41-bin
Cross platform desktop application shell
pkgs.todoist-electron
Official Todoist electron app
pkgs.jitsi-meet-electron
Jitsi Meet desktop application powered by Electron
pkgs.electron-chromedriver
WebDriver server for running Selenium tests on Chrome
pkgs.idrisPackages.electron
Electron bindings for Idris
-
nixos-unstable 2016-03-07
- nixpkgs-unstable 2016-03-07
- nixos-unstable-small 2016-03-07
-
nixos-25.11 2016-03-07
- nixos-25.11-small 2016-03-07
- nixpkgs-25.11-darwin 2016-03-07
pkgs.electron-chromedriver_33
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_34
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_35
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_36
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_37
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_38
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_39
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_40
WebDriver server for running Selenium tests on Chrome
Package maintainers
-
@yayayayaka Yaya <github@uwu.is>
-
@TomaSajt TomaSajt
-
@teutat3s teutat3s <teutates@mailbox.org>
-
@nyanloutre Paul Trehiou <paul@nyanlout.re>
-
@oxalica oxalica <oxalicc@pm.me>
-
@Lassulus Lassulus <lassulus@gmail.com>
-
@liam-murphy14 Liam Murphy <liam.murphy137@gmail.com>
-
@andersk Anders Kaseorg <andersk@mit.edu>
-
@Princemachiavelli Josh Hoffer <jhoffer@sansorgan.es>
-
@pluiedev Leah Amelia Chen <hi@pluie.me>
-
@brainrake Marton Boros <martonboros@gmail.com>
-
@cleeyv Cleeyv <cleeyv@riseup.net>
-
@novmar Marcel Novotny <novotny@marnov.cz>
-
@ryantm Ryan Mulligan <ryan@ryantm.com>
-
@pokon548 Bu Kun <nix@bukn.uk>
-
@kylesferrazza Kyle Sferrazza <nixpkgs@kylesferrazza.com>