8.3 HIGH
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): High (H)
- Privileges Required (PR): None (N)
- User Interaction (UI): Required (R)
- Scope (S): Changed (C)
- Confidentiality (C): High (H)
- Integrity (I): High (H)
- Availability (A): High (H)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): High (H)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): Required (R)
- Modified Confidentiality (MC): High (H)
- Modified Scope (MS): Changed (C)
- Modified Integrity (MI): High (H)
- Modified Availability (MA): High (H)
Activity log
- Created suggestion
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_38
None
-
nixos-26.05 -
- nixos-26.05-small 38.8.4
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_42
Cross platform desktop application shell
pkgs.electron_43
Cross platform desktop application shell
pkgs.electron_44
Cross platform desktop application shell
-
nixos-unstable -
- nixos-unstable-small 44.3.0
pkgs.electron-bin
Cross platform desktop application shell
pkgs.electron-cash
Bitcoin Cash SPV Wallet
pkgs.electron-mail
Unofficial Election-based ProtonMail desktop client
pkgs.electron-fiddle
Easiest way to get started with Electron
pkgs.electron_38-bin
None
-
nixos-26.05 -
- nixos-26.05-small 38.8.4
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.electron_42-bin
Cross platform desktop application shell
pkgs.electron_43-bin
Cross platform desktop application shell
pkgs.electron_44-bin
Cross platform desktop application shell
-
nixos-unstable -
- nixos-unstable-small 44.3.0
pkgs.notion-electron
Enhanced Notion Desktop client for Linux
-
nixos-unstable -
- nixos-unstable-small 2.4.0
pkgs.todoist-electron
To-Do List App & Task Manager
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 -
- nixos-unstable-small 2016-03-07
-
nixos-26.05 -
- nixos-26.05-small 2016-03-07
pkgs.electron-chromedriver_38
None
-
nixos-26.05 -
- nixos-26.05-small 38.8.4
pkgs.electron-chromedriver_39
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_40
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_41
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_42
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_43
WebDriver server for running Selenium tests on Chrome
pkgs.electron-chromedriver_44
WebDriver server for running Selenium tests on Chrome
-
nixos-unstable -
- nixos-unstable-small 44.3.0
Package maintainers
-
@TomaSajt TomaSajt
-
@yayayayaka Yaya <github@uwu.is>
-
@teutat3s teutat3s <teutates@mailbox.org>
-
@oxalica oxalica <oxalicc@pm.me>
-
@nyanloutre Paul Trehiou <paul@nyanlout.re>
-
@liam-murphy14 Liam Murphy <liam.murphy137@gmail.com>
-
@andersk Anders Kaseorg <andersk@mit.edu>
-
@BatteredBunny BatteredBunny <ayes2022@protonmail.com>
-
@Princemachiavelli Josh Hoffer <jhoffer@sansorgan.es>
-
@brainrake Marton Boros <martonboros@gmail.com>
-
@ryantm Ryan Mulligan <ryan@ryantm.com>
-
@novmar Marcel Novotny <novotny@marnov.cz>
-
@Lassulus Lassulus <lassulus@gmail.com>
-
@Mowerick Oliver Hagenauer <oliverhagenauer@gmail.com>
-
@pokon548 Bu Kun <nix@bukn.uk>
-
@kylesferrazza Kyle Sferrazza <nixpkgs@kylesferrazza.com>