CRITICAL🇬🇧 English

CVE-2026-44182

YAML injection w Jupyter Enterprise Gateway — tworzenie uprzywilejowanych podów

CVSS 10.0v4.0pub. 2026-07-16upd. 2026-08-05

Jupyter Enterprise Gateway w wersjach przed 3.3.0 pozwala atakującemu na wstrzyknięcie złośliwych danych do manifestów Kubernetes poprzez niekontrolowane zmienne środowiskowe (np. KERNEL_XXX). Podatność umożliwia tworzenie dowolnych zasobów klastra, w tym uprzywilejowanych podów, co stanowi krytyczne zagrożenie dla infrastruktury kontenerowej.

Pokaż oryginał (EN)

Jupyter Enterprise Gateway launches remote Jupyter Notebook kernels across distributed clusters like Apache Spark, Kubernetes, and Docker Swarm. In versions prior to 3.3.0, the server interpolates untrusted environment variables (e.g., KERNEL_XXX) into Kubernetes manifests without YAML-aware escaping, enabling YAML injection attacks. Attackers can inject new fields, overwrite critical fields (e.g., duplicate securityContext keys, where the last one prevails), and inject document boundaries (--- for new documents, ... for end-of-document) to generate multiple resources, potentially creating arbitrary types, such as privileged pods. The Jinja2 template for the Kubernetes manifest contains several kernel_xxx variables, such as kernel_working_dir that are used when rendering the manifest and are all vectors for YAML injection. This issue has been fixed in version 3.3.0.

🤖 Analiza AI
Jak działa

Serwer interpoluje niezaufane zmienne środowiskowe (takie jak KERNEL_XXX, np. kernel_working_dir) do szablonów Jinja2 generujących manifesty Kubernetes bez stosowania mechanizmów ucieczki znaków specjalnych właściwych dla formatu YAML. Atakujący może wstrzyknąć nowe pola do manifestu, nadpisać kluczowe pola (np. zduplikować klucze securityContext, gdzie ostatni wpis ma pierwszeństwo) lub wstrzyknąć separatory dokumentów YAML (--- lub ...) powodując wygenerowanie wielu niezależnych zasobów. W rezultacie możliwe jest utworzenie dowolnych typów zasobów Kubernetes, w tym podów działających z podwyższonymi uprawnieniami.

Skutki

Atakujący bez żadnego uwierzytelnienia może tworzyć uprzywilejowane pody oraz inne dowolne zasoby w klastrze Kubernetes, co w praktyce oznacza pełne przejęcie kontroli nad klastrem i systemami w nim działającymi.

Mitygacja

Należy niezwłocznie zaktualizować Jupyter Enterprise Gateway do wersji 3.3.0, w której problem został naprawiony. Szczegóły dostępne w referencjach producenta: https://github.com/jupyter-server/enterprise_gateway/releases/tag/v3.3.0

Kogo dotyczy

Jupyter Enterprise Gateway w wersjach wcześniejszych niż 3.3.0, używany w środowiskach z Apache Spark, Kubernetes lub Docker Swarm

Uwagi

Podatność dotyczy wyłącznie środowisk, w których Jupyter Enterprise Gateway jest skonfigurowany do uruchamiania kerneli w klastrze Kubernetes. Środowiska korzystające wyłącznie z Apache Spark lub Docker Swarm mogą być narażone w mniejszym stopniu — szczegóły zakresu podatności dostępne w advisory producenta (GHSA-cfw7-6c5v-2wjq).

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Jupyter Enterprise Gateway

    APP
    Jupyter
    < 3.3.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Container
CWE
Referencje

Powiązane podatności

CVE-2026-44180CRITICAL9.8PL ✓ten sam produkt

Jupyter Enterprise Gateway — obejście ograniczenia UID/GID i eskalacja do root

CVE-2026-44181CRITICAL10.0PL ✓ten sam produkt

SSTI w Jupyter Enterprise Gateway umożliwia RCE i przejęcie klastra Kubernetes

CVE-2026-54527CRITICAL9.3PL ✓ten sam vendor

XSS w JupyterLab Git — złośliwa nazwa pliku wykonuje JavaScript

CVE-2026-44727CRITICAL9.3PL ✓ten sam vendor

Stored XSS w Jupyter Server umożliwiający RCE przez nbconvert

CVE-2023-25574CRITICAL10.0PL ✓ten sam vendor

Brak walidacji podpisów JWT w jupyterhub-ltiauthenticator (LTI13)