# JupyterLab Desktop: XSS and one-click token-leak RCE (CVE-2026-102530 / CVE-2026-86044) plus macOS TCC bypasses — fixed in 4.6.2-1 · pwn.watch > NVD published four JupyterLab Desktop CVEs on 2026-11-06 for issues patched in the Jul 22 2026 v4.6.2-1 security release (first Desktop release in two years). Two are critical remote code execution: CVE-2026-102530 (CVSS 9.4) — unsanitized remote-server URLs in the Connect dialog / Welcome view enable XSS that abuses the privileged Electron IPC bridge; and CVE-2026-86044 (CVSS 9.6) — a MathJax link in an untrusted notebook plus a getServerInfo IPC leak lets one click hand the local Jupyter server token to an attacker site for RCE (requires JupyterLab < 4.4.8 in the managed environment). Two medium macOS-only TCC bypasses (CVE-2025-54991 / CVE-2025-55002, CVSS 5.5) need existing local code execution. Affected: Desktop <= v4.2.5-1. Upgrade to 4.6.2-1. Page: https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530 · generated 2026-11-06T23:56:58.608Z ## Status - Severity: critical · status: live · patch: patched - Product: JupyterLab Desktop (jupyterlab/jupyterlab-desktop) - Started: 2026-07-22 - CVEs: CVE-2026-102530, CVE-2026-86044, CVE-2025-54991, CVE-2025-55002 - Affected: JupyterLab Desktop <= v4.2.5-1; CVE-2026-86044 also requires JupyterLab < 4.4.8 in the Desktop-managed local environment; CVE-2025-54991 / CVE-2025-55002: macOS only - Fixed in: JupyterLab Desktop 4.6.2-1; Partial workaround for CVE-2026-86044: upgrade JupyterLab in-environment to >= 4.4.8 ## Follow this incident - RSS (one item per update): https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530/feed.xml - JSON Feed: https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530/feed.json - Full data (timeline, sources, posts, agentBrief): https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530.json - This file: https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530/llms.txt ## Updates (newest first) - 2026-11-06: NVD receives CVE-2026-102530 (CVSS 9.4), CVE-2026-86044 (CVSS 9.6), CVE-2025-54991 and CVE-2025-55002 (both CVSS 5.5) from security-advisories@github.com, linking the Jul 2026 Desktop security release. (https://nvd.nist.gov/vuln/detail/CVE-2026-102530) - 2026-07-24: GitHub Security Advisories published for the four Desktop issues (CVE assignment noted as pending at the time for the two critical RCE advisories). (https://github.com/jupyterlab/jupyterlab-desktop/security/advisories/GHSA-vrj4-r4fw-9rfh) - 2026-07-22: JupyterLab Desktop v4.6.2-1 released with patches for GHSA-vrj4-r4fw-9rfh (XSS→RCE via Connect URL), GHSA-2mr8-962v-wc67 (one-click token leak→RCE), GHSA-8cvf-4977-r95v (CVE-2025-54991 TCC), and GHSA-5c3f-5gj7-p9xh (CVE-2025-55002 TCC). (https://github.com/jupyterlab/jupyterlab-desktop/releases/tag/v4.6.2-1) ## Fix brief # Security brief: JupyterLab Desktop: XSS and one-click token-leak RCE (CVE-2026-102530 / CVE-2026-86044) plus macOS TCC bypasses — fixed in 4.6.2-1 Source: https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530 · status: live · severity: critical · updated Nov 6, 2026, 22:32 UTC ## Patch status **PATCHED: fixed releases exist. Upgrade to a fixed version.** ## What it is NVD published four JupyterLab Desktop CVEs on 2026-11-06 for issues patched in the Jul 22 2026 v4.6.2-1 security release (first Desktop release in two years). Two are critical remote code execution: CVE-2026-102530 (CVSS 9.4) — unsanitized remote-server URLs in the Connect dialog / Welcome view enable XSS that abuses the privileged Electron IPC bridge; and CVE-2026-86044 (CVSS 9.6) — a MathJax link in an untrusted notebook plus a getServerInfo IPC leak lets one click hand the local Jupyter server token to an attacker site for RCE (requires JupyterLab < 4.4.8 in the managed environment). Two medium macOS-only TCC bypasses (CVE-2025-54991 / CVE-2025-55002, CVSS 5.5) need existing local code execution. Affected: Desktop <= v4.2.5-1. Upgrade to 4.6.2-1. Severity detail: CVE-2026-86044 CVSS 9.6 and CVE-2026-102530 CVSS 9.4 (NVD Received 2026-11-06); macOS TCC pair CVSS 5.5; patched since Jul 2026 v4.6.2-1; no exploitation reported in advisories - Product: JupyterLab Desktop (jupyterlab/jupyterlab-desktop) - CVE / advisory ids: CVE-2026-102530, CVE-2026-86044, CVE-2025-54991, CVE-2025-55002 ## Affected versions - JupyterLab Desktop <= v4.2.5-1 - CVE-2026-86044 also requires JupyterLab < 4.4.8 in the Desktop-managed local environment - CVE-2025-54991 / CVE-2025-55002: macOS only ## Check whether you're affected No generic command applies (the product is a hosted service, appliance or desktop app). Check the installed version in its admin UI / About screen and compare with the versions above. ## Fix Upgrade to one of these fixed versions (or later on the same branch): - JupyterLab Desktop 4.6.2-1 - Partial workaround for CVE-2026-86044: upgrade JupyterLab in-environment to >= 4.4.8 After upgrading, re-run the checks above and redeploy/restart the affected services. ## Secrets to rotate This incident involves possible credential exposure. Rotate any credentials (API keys, tokens, env vars, SSH keys) that were present on affected systems or in affected builds while vulnerable/compromised versions were installed, and review access logs. ## Specific notes CVE IDs from NVD Received 2026-11-06 (GitHub Advisory Database), not cve.now. Patch is months old; page tracks the NVD publication of the critical Desktop RCE cluster. ## Latest updates - Nov 6, 2026: NVD receives CVE-2026-102530 (CVSS 9.4), CVE-2026-86044 (CVSS 9.6), CVE-2025-54991 and CVE-2025-55002 (both CVSS 5.5) from security-advisories@github.com, linking the Jul 2026 Desktop security release. - Jul 24, 2026: GitHub Security Advisories published for the four Desktop issues (CVE assignment noted as pending at the time for the two critical RCE advisories). - Jul 22, 2026: JupyterLab Desktop v4.6.2-1 released with patches for GHSA-vrj4-r4fw-9rfh (XSS→RCE via Connect URL), GHSA-2mr8-962v-wc67 (one-click token leak→RCE), GHSA-8cvf-4977-r95v (CVE-2025-54991 TCC), and GHSA-5c3f-5gj7-p9xh (CVE-2025-55002 TCC). ## Advisories - [GHSA-vrj4-r4fw-9rfh: Connect URL XSS leading to RCE](https://github.com/jupyterlab/jupyterlab-desktop/security/advisories/GHSA-vrj4-r4fw-9rfh) (GitHub) - [GHSA-2mr8-962v-wc67: one-click server token leak leading to RCE](https://github.com/jupyterlab/jupyterlab-desktop/security/advisories/GHSA-2mr8-962v-wc67) (GitHub) - [GHSA-8cvf-4977-r95v / CVE-2025-54991: macOS TCC bypass via entitlements](https://github.com/jupyterlab/jupyterlab-desktop/security/advisories/GHSA-8cvf-4977-r95v) (GitHub) - [GHSA-5c3f-5gj7-p9xh / CVE-2025-55002: macOS TCC bypass via Node fuses](https://github.com/jupyterlab/jupyterlab-desktop/security/advisories/GHSA-5c3f-5gj7-p9xh) (GitHub) - [JupyterLab Desktop v4.6.2-1 release](https://github.com/jupyterlab/jupyterlab-desktop/releases/tag/v4.6.2-1) (GitHub) - [NVD: CVE-2026-102530](https://nvd.nist.gov/vuln/detail/CVE-2026-102530) (NVD) - [NVD: CVE-2026-86044](https://nvd.nist.gov/vuln/detail/CVE-2026-86044) (NVD) ## Write-ups & news - [JupyterLab Desktop 4.6.2-1 is out: critical security patches](https://discourse.jupyter.org/t/jupyterlab-desktop-4-6-2-1-is-out-critical-security-patches/38799) --- Machine-readable: https://pwn.watch/i/jupyterlab-desktop-xss-token-leak-rce-cve-2026-102530.json · all incidents: https://pwn.watch/incidents.json. Verify against the vendor advisory before changing production systems.