Glossary term
Credential theft
Credential theft is the stealing of account names, passwords and similar login material so that someone else can use them.
Quick links
Press Enter to search, Esc to close
Vulnerability
A flaw in JupyterLab Desktop's background IPC method, getServerInfo.
In short
CVE-2026-86044 is a flaw in JupyterLab Desktop's background IPC method, getServerInfo. The method kept returning the local Jupyter server's address and authentication token to the app window, even after that window had navigated to an outside site. GitHub's advisory and NVD score it CVSS 3.1 9.6 Critical and name 4.6.2-1 as the fixed release.
JupyterLab Desktop is the packaged desktop app for JupyterLab, which runs notebooks against a local Jupyter server. The advisory says the app's preload bridge exposed a getServerInfo method to the page running inside its window. That method returned the local server's full address and authentication token.
The advisory says the method kept answering even after the window had navigated away from the JupyterLab page itself. Normally a notebook's security model stops a rendered link from taking over the existing window, by opening an outside site in a new window instead.
The advisory describes three linked steps. First, in JupyterLab before 4.4.8, a link rendered by the MathJax HTML extension did not get the usual new-window handling.
Clicking that link could navigate the existing JupyterLab Desktop window itself to an outside site. Second, once that outside page was running in the same window, it could still call getServerInfo through the preload bridge and read the local server's address and token.
Third, the advisory says that token lets the outside page use the Jupyter REST API to create a notebook, mark it trusted, and open it. The advisory says that is equivalent to running code on the victim's machine.
The advisory is explicit that a victim must open an untrusted notebook and click one link inside it. JetBrains-style Safe Mode is not part of this product, so Jupyter's own notebook trust model is the only barrier the flaw gets past.
GitHub, the CNA, scores it CVSS 3.1 9.6 Critical, vector CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H. The UI:R component matches the advisory's own condition that a victim must click a link. There is no CVSS 4.0 score in the record or NVD.
GitHub's advisory was filed through its own coordinated disclosure process for open-source projects. As of CISA catalogue version 2026.11.06, CVE-2026-86044 is not in the Known Exploited Vulnerabilities catalogue.
NVD's own description states the affected range as JupyterLab Desktop prior to 4.6.2-1, on every platform the app ships for. The advisory's own structured version field is narrower, listing tested and affected installs as v4.2.5-1 and earlier, since that was the newest release when the issue was first reported.
The advisory lists four conditions that must all hold for a session to be at risk. The Desktop app must be on an affected release, and the JupyterLab version in that environment must be earlier than 4.4.8. The session must be a local one the app manages itself, which is the default, and the victim must click a link inside a notebook.
A user whose environment already runs JupyterLab 4.4.8 or later is not affected, the advisory says. The corrected link handling in that release stops the first step of the chain, even without a Desktop app update.
JupyterLab Desktop 4.6.2-1 is released, the project's first release in two years, patching this flaw along with three other security issues.
GitHub publishes the security advisory GHSA-2mr8-962v-wc67 for JupyterLab Desktop, ahead of a CVE identifier.
GitHub publishes the CVE record for CVE-2026-86044, and NVD publishes its entry, both naming the fix in JupyterLab Desktop 4.6.2-1.
Move every JupyterLab Desktop install to 4.6.2-1 or later, per the GitHub advisory, which closes both the token-exposure method and the underlying link handling.
The advisory says raising JupyterLab itself to 4.4.8 or later inside the managed environment breaks the first step of the chain, even on an older Desktop build.
The advisory names jupyter labextension disable @jupyterlab/mathjax-extension as a workaround for installs that cannot upgrade either component yet.
We recommend not opening a notebook from an unknown source in JupyterLab Desktop, and not clicking a link inside a notebook whose origin is unclear.
4.6.2-1. The advisory also says raising the underlying JupyterLab library to 4.4.8 or later breaks the first step of the attack chain.
Yes. The advisory says a victim must open an untrusted notebook and click one link inside it; the chain does not run without that click.
No. The advisory limits it to local sessions, which the app manages itself by default, on a JupyterLab version earlier than 4.4.8.
It is not in catalogue version 2026.11.06. The advisory does not state that the flaw has been exploited.
Take control of your digital security with an exclusive demo of our AI-driven threat intelligence platform.