Skip to content
Fencer Vulns
high 7.4

CVE-2021-32797 json

JupyterLab: XSS due to lack of sanitization of the action attribute of an html <form>

published 2021-08-09 5 y ago modified 2026-09-08 2 mo ago also BIT-jupyterlab-2021-32797 , EUVD-2021-0107 , GHSA-4952-p58q-6crx , PYSEC-2021-130 , PYSEC-2026-688

cvss
7.4
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
2.7%
EPSS 2.7% chance of exploitation in 30 days, percentile 85%
public exploits
0
none known

Summary

JupyterLab is a user interface for Project Jupyter which will eventually replace the classic Jupyter Notebook. In affected versions untrusted notebook can execute code on load. In particular JupyterLab doesn’t sanitize the action attribute of html `<form>`. Using this it is possible to trigger the form validation outside of the form itself. This is a remote code execution, but requires user action to open a notebook.

Patch / fix

  • pypi jupyterlab 1.2.21, 2.2.10, 2.3.2, 3.0.17, 3.1.4
  • pypi notebook 5.7.11, 6.4.1
  • bitnami jupyterlab 1.2.21, 2.2.10, 2.3.2, 3.0.17, 3.1.4
  • jupyter jupyterlab 1.2.21, 2.2.10, 2.3.2, 3.0.17, 3.1.4
  • python-jupyterlab Package Hub 15 SP4, openSUSE Leap 15.4 2.2.10-bp154.2.3.1

opensuse advisories openSUSE-SU-2022:10075-1

  • jupyterlab Arch Linux 3.1.4-1

arch linux advisories AVG-2266

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2021-32797 updated cvss 9.6

JupyterLab: unstrusted notebook can execute on load which could lead to an RCE

  • Red Hat All currently supported Red Hat products
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

2.66% chance of exploitation in the next 30 days, higher than 85% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • github.com https://github.com/jupyterlab/jupyterlab/commit/504825938c0abfa2fb8ff8d529308830a5ae42ed referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.1 7.4 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N
GitHub 3.1 7.4 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N
NVD 3.1 9.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
NVD 2.0 6.8 AV:N/AC:M/Au:N/C:P/I:P/A:P
OSV 3.1 9.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
OSV 3.1 7.4 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:N/A:N

Affected packages

ecosystem package affected fixed in
pypi jupyterlab
<1.2.21
>=2.0.0a0, <2.2.10
>=2.3.0a0, <2.3.2
>=3.0.0a0, <3.0.17
>=3.1.0a0, <3.1.4
>=2, <2.2.10
>=2.3, <2.3.2
>=3, <3.0.17
>=3.1, <3.1.4
1.2.21
2.2.10
2.3.2
3.0.17
3.1.4
pypi notebook
<5.7.11
>=6.0.0, <6.4.1
5.7.11
6.4.1
bitnami jupyterlab
<1.2.21
>=2.0.0, <2.2.10
>=2.3.0, <2.3.2
>=3.0.0, <3.0.17
>=3.1.0, <3.1.4
1.2.21
2.2.10
2.3.2
3.0.17
3.1.4

Affected products

  • jupyterlab jupyterlab

Classification

Weakness
  • CWE-79 Improper Neutralization of Input During Web Page Generation
  • CWE-75 Failure to Sanitize Special Elements into a Different Plane
  • CWE-87 Improper Neutralization of Alternate XSS Syntax

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.