JupyterLab Desktop: TCC Bypass via Insecure Entitlements (macOS)
- Exploited
- No known exploitation
- Fix
- Fixed in 4.6.2-1
- Who is exposed
- Not reported
Do first: Upgrade to a fixed version: 4.6.2-1.
- Last modified
- A 0-100 score for how much a CVE matters across the industry: exploitation, exposure, how widely the software is used, severity and whether a fix exists.What do these mean? →
- 6/100 · provisional
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
JupyterLab Desktop for macOS, a cross-platform desktop app for JupyterLab, has a flaw that lets a local attacker who can already run code as the current user load a malicious library into the app and inherit permissions the app already holds, such as access to protected Documents, Desktop, or Downloads folders. The attacker cannot use this to get initial or remote code execution, and Windows and Linux are not affected.
Written by anthropic/claude-haiku-5.5 from the sources below. Verify against them.
Read the original description
JupyterLab Desktop is the cross-platform desktop application for JupyterLab. Prior to 4.6.2-1, JupyterLab Desktop for macOS declared the com.apple.security.cs.allow-dyld-environment-variables entitlement, allowing the dynamic linker to honor DYLD_INSERT_LIBRARIES despite the hardened runtime. An attacker who can already execute code as the current user can load an arbitrary dynamic library into the JupyterLab Desktop process and inherit TCC permissions previously granted to the application, including access to protected Documents, Desktop, or Downloads folders without another macOS prompt. Exploitation requires existing local code execution and prior TCC grants; it does not provide initial or remote code execution. Windows and Linux are not affected. This vulnerability is fixed in 4.6.2-1.
cve.now Index
- Exploitation?/40Unknown. No CISA SSVC exploitation rating yet
- Exposure?/25Unknown. No advisory context yet
- Reach?/20Unknown. No tracked technology or package matched
- Severity5.5/10CVSS 5.5
- No patch0/5No signal
What would change the score
- Would score about 61 if added to CISA KEV
- Would score about 56 if CISA's SSVC rates exploitation active
- Would score about 28 if advisories confirm default setups are exposed
What to do
Upgrade to a fixed version: 4.6.2-1.
Timeline
- CVE published
- First seen by cve.now
Affected versions
- jupyterlab jupyterlab-desktop
fixed in 4.6.2-1
Evidence 3
- Advisory
- Repository
- Repository
Corrections
None so far.
Something wrong on this page? Report an error. Every fix is listed here.
Questions about CVE-2025-54991
Is CVE-2025-54991 being exploited?
It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data
Which versions are affected by CVE-2025-54991?
jupyterlab-desktop: before 4.6.2-1.Source: cve.now feed data
How do I fix CVE-2025-54991?
Upgrade to a fixed version: 4.6.2-1.Source: cve.now feed data