JupyterLab is an extensible environment for interactive and reproducible computing, based on the Jupyter Notebook Architecture. From JupyterLab 4.0.0 until 4.5.11 and 4.6.4, the PyPI Extension Manager uninstall request reaches ExtensionHandler.post, which validates extension names for installation but passes uninstall names to PyPIExtensionManager.uninstall and python -m pip uninstall without rejecting option-like values. The security impact requires that the PyPI Extension Manager is enabled, the account can call the extension API, and kernels and terminals are disabled or delegated to remote hosts; otherwise the user can already read files and make outbound requests directly. An authenticated user with extension API access can supply a pip requirements option to make the server read a local file or fetch an internal URL, and reflected parse errors can return the first unparsable line or response content. A pip log option can also create or corrupt a chosen path with pip-generated log text, but the requester cannot select an arbitrary disclosed line or arbitrary file content, and the injection does not add code execution or availability impact beyond ordinary package removal. This issue is fixed in JupyterLab 4.5.11 and 4.6.4.
CVE-2026-102904
This medium-severity CVE scores 5.4 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.2% (9th percentile of EPSS-scored CVEs). GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- Lower severity and no public exploit yet
A fix is available — apply it.
- CVSS v3
- 5.4
- EG Score
- 5.4MEDIUMmedium confidence
- EG Risk
- 24EG Risk 24/100CISA SSVC
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity54% × 45%Exploitation0% × 40%Automatability0% × 15%CISA SSVC: Track at every mission impact level.Action: A fix is available. Apply it within your standard update timelines. - EPSS PROB
- 0.2%
- EPSS %ILE
- 9th
- KEV
- Not listed
CISA SSVCTrack at every mission impact level.
A fix is available. Apply it within your standard update timelines.
Exploitation none (CISA Vulnrichment) · Automatable no (CISA Vulnrichment) · Technical impact partial (CISA Vulnrichment). Mission impact is CISA's Mission & Well-being decision point, and only you can judge it: high means the affected system is essential to your organisation's mission, or its compromise could cause irreversible harm to people. CISA's decision table
Published
September 29, 2026
Last Modified
September 30, 2026
Advisory Details (5)
Auto-updated Sep 29, 2026v4.6.4
Patch available: jupyterlab/jupyterlab v4.6.4
https://github.com/jupyterlab/jupyterlab/releases/tag/v4.6.4v4.5.11
Patch available: jupyterlab/jupyterlab v4.5.11
https://github.com/jupyterlab/jupyterlab/releases/tag/v4.5.11commit e277bc958e73 (jupyterlab/jupyterlab)
Fix landed in jupyterlab/jupyterlab commit e277bc958e73 — awaiting tagged release
https://github.com/jupyterlab/jupyterlab/commit/e277bc958e737130ac47b6c5078d08b29298828fcommit a274a8276b91 (jupyterlab/jupyterlab)
Fix landed in jupyterlab/jupyterlab commit a274a8276b91 — awaiting tagged release
https://github.com/jupyterlab/jupyterlab/commit/a274a8276b9185d03efd4c3c20713d3137ac49e6Argument injection in JupyterLab extension uninstall exposes server-readable files and internal URLs · Advisory · jupyterlab/jupyterlab · GitHub
Affected: 4.5.7
https://github.com/jupyterlab/jupyterlab/security/advisories/GHSA-3325-v43h-43rvVendor Advisories for CVE-2026-102904(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Affected Packages
(1 across 1 ecosystem)
PyPI(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| jupyterlab | 4.6.0, 4.6.1, 4.6.2, 4.6.3 | 4.6.4 | — |
Weakness Classification(3)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 11× in last 7d / 11× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-10-04 03:46 UTCEG score recompute
- 2026-10-03 14:25 UTCEPSS rescore
- 2026-10-03 01:54 UTCEG score recompute
- 2026-10-02 00:01 UTCEG score recompute
- 2026-10-01 19:49 UTCEPSS rescore
- 2026-09-30 21:29 UTCEG score recompute
- 2026-09-30 20:27 UTCEG score recompute
- 2026-09-30 15:02 UTCEPSS rescore
- 2026-09-29 21:21 UTCEG score recompute
- 2026-09-29 20:59 UTCEG score recompute
- 2026-09-29 20:58 UTCMITRE cvelistV5first tracked
Related CVEs(same product + same CWE)
Same product
10 shownPyPI:jupyterlab
Same CWE
10 shownCWE-918 · CWE-88
Frequently asked(5)
What is CVE-2026-102904?
When was CVE-2026-102904 disclosed?
Is CVE-2026-102904 actively exploited?
What is the CVSS score of CVE-2026-102904?
How do I remediate CVE-2026-102904?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-102904
Is Your Infrastructure Affected by CVE-2026-102904?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.