CVE-2026-86044
KrytyczneCVSS 9.6Streszczenie
JupyterLab Desktop przed wersją 4.6.2-1 udostępniało funkcję getServerInfo rendererowi bez potwierdzenia, że bieżąca strona nadal pochodzi z lokalnego serwera Jupyter. W lokalnej sesji zarządzanej z JupyterLab przed 4.4.8 atakujący może umieścić spreparowany link MathJax w niezaufanym notatniku; po kliknięciu ofiara przechodzi na stronę atakującego, która zachowuje dostęp do mostka preload i może pobrać URL serwera oraz token uwierzytelniający, a następnie utworzyć i zaufać notatnikowi wykonującemu dowolny kod.
Ocena ryzyka
Atakujący może przejąć kontrolę nad lokalnym serwerem Jupyter i wykonać dowolny kod z uprawnieniami ofiary, co prowadzi do pełnej kompromitacji stacji roboczej i danych użytkownika.
Rekomendacja
Zaktualizuj JupyterLab Desktop do wersji 4.6.2-1 lub nowszej; jeśli środowisko używa już JupyterLab 4.4.8+, ryzyko jest ograniczone, ale aktualizacja aplikacji jest nadal zalecana.
Inne podatności w JupyterLab Desktop
Zobacz wszystkie- CVE-2025-55002Średnie
W JupyterLab Desktop dla systemu macOS w wersji przed 4.6.2-1 był włączony mechanizm Electron RunAsNode, umożliwiający zmiennej ELECTRON_RUN_AS_NODE uruchamianie dowolnego kodu Node.js w procesie aplikacji. Atakujący, który może już wykonywać kod jako bieżący użytkownik, może uruchomić kod w kontekście JupyterLab Desktop i odziedziczyć uprawnienia TCC wcześniej przyznane aplikacji, w tym dostęp do chronionych folderów Documents, Desktop lub Downloads bez dodatkowego monitu macOS. Wykorzystanie wymaga istniejącego lokalnego wykonania kodu i wcześniejszych uprawnień TCC; nie zapewnia początkowego ani zdalnego wykonania kodu. Systemy Windows i Linux nie są dotknięte.
- CVE-2025-54991Średnie
W JupyterLab Desktop dla systemu macOS w wersji przed 4.6.2-1 zadeklarowano uprawnienie com.apple.security.cs.allow-dyld-environment-variables, co pozwalało dynamicznemu linkerowi honorować DYLD_INSERT_LIBRARIES mimo działania hardened runtime. Atakujący, który może już wykonywać kod jako bieżący użytkownik, może załadować dowolną bibliotekę dynamiczną do procesu JupyterLab Desktop i odziedziczyć uprawnienia TCC wcześniej przyznane aplikacji, w tym dostęp do chronionych folderów Documents, Desktop lub Downloads bez dodatkowego monitu macOS. Wykorzystanie wymaga istniejącego lokalnego wykonania kodu i wcześniejszych uprawnień TCC; nie zapewnia początkowego ani zdalnego wykonania kodu. Systemy Windows i Linux nie są dotknięte.
- CVE-2026-102530Krytyczne
JupyterLab Desktop przed wersją 4.6.2-1 wstawiał adresy URL zdalnych serwerów do okna wyboru serwera i widoku Welcome bez bezpiecznego kodowania. Atakujący, który nakłoni użytkownika do przesłania spreparowanego URL, może wykonać JavaScript w rendererze Welcome i wykorzystać uprzywilejowany mostek IPC do wykonania dowolnego kodu z uprawnieniami użytkownika; osobna ścieżka dotyczy niebezpiecznego renderowania tytułów kanału RSS.
Oryginalny opis (angielski, źródło NVD)
JupyterLab Desktop is the cross-platform desktop application for JupyterLab. Prior to 4.6.2-1, JupyterLab Desktop exposed getServerInfo to the renderer without confirming that the current page still had the local Jupyter server origin. In a local managed session using JupyterLab before 4.4.8, an attacker can place a crafted MathJax link in an untrusted notebook. If a victim opens the notebook and clicks the link, the existing renderer navigates to an attacker-controlled site while retaining access to the preload bridge. The site can call getServerInfo to obtain the local server URL and authentication token, then use the Jupyter REST API to create and trust a notebook that executes arbitrary code as the victim. Users whose environment already uses JupyterLab 4.4.8 or later are unaffected because the corrected link handling breaks the first step of the chain. This vulnerability is fixed in 4.6.2-1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

