8.6 HIGH
- CVSS version (CVSS): 4.0
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Attack Requirement (AT): None (N)
- Privileges Required (PR): None (N)
- User Interaction (UI): Active (A)
- Vulnerable System Impact Confidentiality (VC): High (H)
- Vulnerable System Impact Integrity (VI): High (H)
- Vulnerable System Impact Availability (VA): Low (L)
- Subsequent System Impact Confidentiality (SC): None (N)
- Subsequent System Impact Integrity (SI): None (N)
- Subsequent System Impact Availability (SA): Low (L)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Attack Requirement (MAT): None (N)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): Active (A)
- Modified Vulnerable System Impact Confidentiality (MVC): High (H)
- Modified Vulnerable System Impact Integrity (MVI): High (H)
- Modified Vulnerable System Impact Availability (MVA): Low (L)
- Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
- Modified Subsequent System Impact Integrity (MSI): Negligible (N)
- Modified Subsequent System Impact Availability (MSA): Low (L)
- Safety (S): Not Defined (X)
- Automatable (AU): Not Defined (X)
- Recovery (R): Not Defined (X)
- Value Density (V): Not Defined (X)
- Vulnerability Response Effort (RE): Not Defined (X)
- Provider Urgency (U): Not Defined (X)
- Confidentiality Req. (CR): Not Defined (X)
- Integrity Req. (IR): Not Defined (X)
- Availability Req. (AR): Not Defined (X)
- Exploit Maturity (E): Not Defined (X)
Activity log
- Created suggestion
JupyterLab: Cross-site scripting (XSS) via crafted settings file (`overrides.json`)
jupyterlab is an extensible environment for interactive and reproducible computing, based on the Jupyter Notebook Architecture. From 3.3.0 until 4.5.10 and 4.6.2, JupyterLab allows notebook settings to be shared and applied through an overrides.json file using the Import button in the Settings Editor. In packages/notebook-extension/schema/tracker.json and packages/notebook-extension/src/index.ts, the sideBySideLeftMarginOverride and sideBySideRightMarginOverride settings are not properly validated before being inserted into style content, allowing a crafted settings file to contain instructions that execute as code instead of only changing display preferences. A user can import the malicious file, or an attacker with access to a shared settings location can plant an overrides.json that is applied automatically. The embedded code runs with the affected user's access and can read or modify notebooks and files and run code through the notebook server, including on a connected kernel. This issue is fixed in versions 4.5.10 and 4.6.2.
References
-
https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-pppj-hq3g-57pj x_refsource_CONFIRM
-
https://github.com/jupyterlab/jupyterlab/pull/19184 x_refsource_MISC
-
https://github.com/jupyterlab/jupyterlab/pull/19185 x_refsource_MISC
-
https://github.com/jupyterlab/jupyterlab/pull/19186 x_refsource_MISC
-
https://github.com/jupyterlab/jupyterlab/releases/tag/v4.5.10 x_refsource_MISC
-
https://github.com/jupyterlab/jupyterlab/releases/tag/v4.6.2 x_refsource_MISC
-
https://github.com/jupyterlab/jupyterlab/releases/tag/v4.7.0a1 x_refsource_MISC
Affected products
- ==>= 4.6.0, < 4.6.2
- ==>= 3.3.0, < 4.5.10
Matching in nixpkgs
pkgs.python313Packages.jupyterlab
Jupyter lab environment notebook server extension
pkgs.python314Packages.jupyterlab
Jupyter lab environment notebook server extension
pkgs.python313Packages.jupyterlab-git
Jupyter lab extension for version control with Git
pkgs.python313Packages.jupyterlab-lsp
Language Server Protocol integration for Jupyter(Lab)
pkgs.python313Packages.jupyterlab-vim
Vim notebook cell bindings for JupyterLab
pkgs.python314Packages.jupyterlab-git
Jupyter lab extension for version control with Git
pkgs.python314Packages.jupyterlab-lsp
Language Server Protocol integration for Jupyter(Lab)
pkgs.python314Packages.jupyterlab-vim
Vim notebook cell bindings for JupyterLab
pkgs.python313Packages.jupyterlab-server
Set of server components for JupyterLab and JupyterLab like applications
pkgs.python314Packages.jupyterlab-server
Set of server components for JupyterLab and JupyterLab like applications
pkgs.python313Packages.jupyterlab-git-core
Core package for the JupyterLab Git extension
-
nixos-unstable -
- nixos-unstable-small 0.54.0
pkgs.python313Packages.jupyterlab-pygments
Jupyterlab syntax coloring theme for pygments
pkgs.python314Packages.jupyterlab-git-core
Core package for the JupyterLab Git extension
-
nixos-unstable -
- nixos-unstable-small 0.54.0
pkgs.python314Packages.jupyterlab-pygments
Jupyterlab syntax coloring theme for pygments
pkgs.python313Packages.jupyterlab-execute-time
JupyterLab extension for displaying cell timings
Package maintainers
-
@GaetanLepage Gaetan Lepage <gaetan@glepage.com>
-
@thomasjm Tom McLaughlin <tom@codedown.io>
-
@natsukium Tomoya Otabi <nixpkgs@natsukium.com>
-
@vglfr vglfr <vf.velt@gmail.com>
-
@chiroptical Barry Moore II <chiroptical@gmail.com>
-
@mart-mihkel Mart-Mihkel Aun <mart.mihkel.aun@gmail.com>