Read the docs
TI-2026-28985 Aliases CVE-2026-40171GHSA-rch3-82jr-f9w9

Jupyter Notebook and JupyterLab token theft via stored XSS in help command linker

Priority LOW 39CWE-79Published · Updated

Key facts

Attack vector
Network
Privileges required
High
User interaction
Active
Attack complexity
Low
Attack requirements
None
Impact type
Cross-site scripting, Spoofing
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-79 and CWE-601.

Summary

In Jupyter Notebook versions 7.0.0 through 7.5.5, JupyterLab versions 4.5.6 and earlier, and the corresponding @jupyter-notebook/help-extension and @jupyterlab/help-extension packages before 7.5.6 and 4.5.7, a stored cross-site scripting issue in the help command linker can be chained with attacker-controlled notebook content to steal authentication tokens with a single click. An attacker can craft a malicious notebook file containing elements that appear indistinguishable from legitimate controls and trigger execution when a user interacts with them. Successful exploitation allows theft of the user's authentication token and complete takeover of the Jupyter session through the REST API, including reading files, creating or modifying files, accessing kernels to execute arbitrary code, and creating terminals for shell access. This issue has been fixed in Notebook 7.5.6, JupyterLab 4.5.7, @jupyter-notebook/help-extension 7.5.6, and @jupyterlab/help-extension 4.5.7. As a workaround, disable the affected help extensions or set allowCommandLinker to false in the sanitizer configuration.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00476 41st percentileScored 2026-11-07
Fix Fixed @jupyter-notebook/help-extension (npm): 7.5.6notebook (PyPI): 7.5.6+2 more productsRed Hat: 3 advisories

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
jupyterlabnotebook7.0.0 – 7.5.5—No fix listedCNA
jupyterlabhelp-extensionup to 4.5.6—No fix listedCNA
jupyterlabjupyterlabup to 4.5.6—No fix listedCNA
jupyter-notebookhelp-extension7.0.0 – 7.5.5—No fix listedCNA
—@jupyter-notebook/help-extension (npm)7.0.0 to before 7.5.67.5.6Patch availableGHSA-rch3-82jr-f9w9
—notebook (PyPI)7.0.0 to before 7.5.67.5.6Patch availableGHSA-rch3-82jr-f9w9
—jupyterlab (PyPI)before 4.5.74.5.7Patch availableGHSA-rch3-82jr-f9w9
—@jupyterlab/help-extension (npm)before 4.5.74.5.7Patch availableGHSA-rch3-82jr-f9w9
  • notebook Vendorjupyterlab Affected 7.0.0 – 7.5.5 Fixed in — No fix listed CNA
  • help-extension Vendorjupyterlab Affected up to 4.5.6 Fixed in — No fix listed CNA
  • jupyterlab Vendorjupyterlab Affected up to 4.5.6 Fixed in — No fix listed CNA
  • help-extension Vendorjupyter-notebook Affected 7.0.0 – 7.5.5 Fixed in — No fix listed CNA
  • @jupyter-notebook/help-extension (npm) Vendor— Affected 7.0.0 to before 7.5.6 Fixed in 7.5.6 Patch available GHSA-rch3-82jr-f9w9
  • notebook (PyPI) Vendor— Affected 7.0.0 to before 7.5.6 Fixed in 7.5.6 Patch available GHSA-rch3-82jr-f9w9
  • jupyterlab (PyPI) Vendor— Affected before 4.5.7 Fixed in 4.5.7 Patch available GHSA-rch3-82jr-f9w9
  • @jupyterlab/help-extension (npm) Vendor— Affected before 4.5.7 Fixed in 4.5.7 Patch available GHSA-rch3-82jr-f9w9

CPE names Threatist (inferred) · 2

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:jupyter:notebook:*:*:*:*:*:*:*:*——jupyterlab
cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:*——jupyterlab
  • cpe:2.3:a:jupyter:notebook:*:*:*:*:*:*:*:* Versions — — ·jupyterlab
  • cpe:2.3:a:jupyter:jupyterlab:*:*:*:*:*:*:*:* Versions — — ·jupyterlab

Remediation

  • Fix · GHSA-rch3-82jr-f9w9 @jupyter-notebook/help-extension (npm) Fixed in 7.5.6 Advisory →
  • Fix · GHSA-rch3-82jr-f9w9 notebook (PyPI) Fixed in 7.5.6 Advisory →
  • Fix · GHSA-rch3-82jr-f9w9 jupyterlab (PyPI) Fixed in 4.5.7 Advisory →
  • Fix · GHSA-rch3-82jr-f9w9 @jupyterlab/help-extension (npm) Fixed in 4.5.7 Advisory →

Red Hat 3 advisories

  • RHSA-2026:65126 Released 2026-09-08 · Red Hat rating Important
    RHOAI 2.25.11 - Red Hat OpenShift AI
    • Red Hat OpenShift AI 2.25 registry.redhat.io/rhoai/odh-built-in-detector-rhel9, registry.redhat.io/rhoai/odh-caikit-tgis-serving-rhel9, registry.redhat.io/rhoai/odh-dashboard-rhel9 +47
  • RHSA-2026:60520 Released 2026-08-27 · Red Hat rating Critical
    RHOAI 3.4.4 - Red Hat OpenShift AI
    • Red Hat OpenShift AI 3.4 registry.redhat.io/rhoai/odh-automl-rhel9, registry.redhat.io/rhoai/odh-autorag-rhel9, registry.redhat.io/rhoai/odh-built-in-detector-rhel9 +47
  • RHSA-2026:43038 Released 2026-07-21 · Red Hat rating Critical
    Migration Toolkit for Applications
    • Red Hat Migration Toolkit for Applications 8.2 registry.redhat.io/mta/mta-cli-rhel9, registry.redhat.io/mta/mta-solution-server-rhel9

Vendor assessments

Red Hat

Red Hat rating: Important. Red Hat's page for this CVE →

ProductStatusPlan or fix
Red Hat Migration Toolkit for Applications 8.2Fixed RHSA-2026:43038
Red Hat OpenShift AI 2.25Fixed RHSA-2026:65126
Red Hat OpenShift AI 3.4Fixed RHSA-2026:60520
Not affected: 4 products
  • Red Hat Migration Toolkit for Applications 8.2
  • Red Hat OpenShift AI (RHOAI)
  • Red Hat OpenShift AI 2.25
  • Red Hat OpenShift AI 3.4

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-40171
  2. 2026-10-03 Alias added: GHSA-rch3-82jr-f9w9
  3. 2026-10-06 EPSS moved to the 50th–90th percentile
  4. 2026-10-25 EPSS moved to the below the 50th percentile
  5. 2026-10-25 Priority changed: MEDIUM → LOW

References

  • TI-2026-32161 Jupyter Enterprise Gateway Has Kubernetes Manifest Injection via Jinja2 Template Rendering CVSS 4.0CRITICAL 10.0
  • TI-2026-32160 Jupyter Enterprise Gateway: Jinja2 Template Server Side Template Injection results in Remote Code Execution CVSS 4.0CRITICAL 10.0
  • TI-2026-32159 Jupyter Enterprise Gateway: ContainerProcessProxy._enforce_prohibited_ids can be Bypassed CVSS 3.1CRITICAL 9.8
  • TI-2024-26623 Remote Code Execution (RCE) vulnerability in jupyterlab extension template `update-integration-tests` GitHub Action CVSS 3.1CRITICAL 10.0
  • TI-2026-78983 Path traversal in nbconvert lets crafted notebooks write files CVSS 4.0HIGH 8.8
  • TI-2026-39372 JupyterLab Git: Stored XSS leading to RCE CVSS 4.0CRITICAL 9.3
See all 89 →

Sources