CVE-2026-88980
WysokieCVSS 8.6Streszczenie
W Kubeflow Pipelines przed wersją 2.18.0 trasa frontendu GET /artifacts/get akceptuje source=http lub source=https z kontrolowanymi przez wywołującego wartościami bucket i key, a isAllowedResourceName zezwala na w pełni cyfrowy host dziesiętny, który parser URL konwertuje na adres IPv4. Domyślny ALLOWED_ARTIFACT_DOMAIN_REGEX i konfiguracja standalone z wyłączoną autoryzacją pozwalają nieuwierzytelnionemu wywołującemu pobierać wewnętrzne zasoby HTTP i odbierać ich treść odpowiedzi.
Ocena ryzyka
Podatność umożliwia nieuwierzytelnione żądania po stronie serwera (SSRF) do zasobów wewnętrznych, co może ujawnić dane lub posłużyć do dalszych ataków. W konfiguracji wieloużytkownikowej ten sam defekt jest osiągalny dla najemcy o niskich uprawnieniach.
Rekomendacja
Zaktualizuj Kubeflow Pipelines do wersji 2.18.0 lub nowszej. Ogranicz ALLOWED_ARTIFACT_DOMAIN_REGEX do zaufanych domen i włącz autoryzację.
Inne podatności w Kubeflow Pipelines
Zobacz wszystkie- CVE-2026-88984Wysokie
W Kubeflow Pipelines przed wersją 2.16.1 serwer API w trybie wieloużytkownikowym traktuje pustą przestrzeń nazw używaną przez współdzielone lub globalne pipeline'y jako wyjątek autoryzacyjny dla operacji modyfikacji i usuwania. Uwierzytelniony użytkownik może modyfikować lub usuwać współdzielone definicje i wersje pipeline'ów bez wymaganych uprawnień Kubernetes RBAC, naruszając ich integralność i dostępność.
- CVE-2026-88982Średnie
W Kubeflow Pipelines przed wersją 2.18.0 starszy webhook mutujący pamięć podręczną wykonania V1/raw-Argo oraz ścieżka przechowywania cache-server wybierają pola szablonu bez przestrzeni nazw Kubernetes i ufają zmiennej adnotacji execution_cache_key. W środowiskach wielodostępnych najemca z uprawnieniami do zgłaszania zadań może odczytać wyniki z pamięci podręcznej innej przestrzeni nazw lub podstawić pasujące wyniki do późniejszego kroku.
- CVE-2026-88981Wysokie
W Kubeflow Pipelines przed wersją 2.18.0 ścieżka pobierania artefaktów frontendu dla source=s3 lub source=minio akceptuje providerInfo.Params.endpoint, a ścieżka logów podów akceptuje metadane punktu końcowego S3 z statusu workflow, bez wymagania zgodności z konfiguracją przechowywania operatora. W domyślnej konfiguracji standalone z wyłączoną autoryzacją nieuwierzytelniony wywołujący może zmusić współdzielony pod ml-pipeline-ui do połączenia z dowolnymi osiągalnymi hostami i zwrócenia danych odpowiedzi.
- CVE-2026-88979Średnie
W Kubeflow Pipelines od wersji 2.17.0 do 2.18.0 token proxy TensorBoard używa MINIO_SECRET_KEY jako sekretu HMAC, którego domyślna wartość jest publicznie znana. W środowisku z wyłączoną autoryzacją i domyślnym sekretem nieuwierzytelniony atakujący może sfałszować token z wybranym viewerName i przestrzenią nazw.
- CVE-2026-88986Średnie
W Kubeflow Pipelines przed wersją 2.15.0 trasy frontendu /pipeline/k8s/pod oraz /pipeline/k8s/pod/events umieszczają niezaufane wartości podname i podnamespace oraz szczegóły błędów backendu w odpowiedziach błędów interpretowanych jako HTML. Nieuwierzytelniony atakujący może spreparować link, który wykona JavaScript w origin frontendu, gdy użytkownik spełniający wymagania uwierzytelnienia i dostępu do tras go otworzy. Ujawnienie ciasteczek zależy od ich atrybutów, a wykonanie kodu po stronie serwera lub wpływ na dostępność nie zostały potwierdzone.
- CVE-2026-88985Średnie
W Kubeflow Pipelines przed wersją 2.17.0 serwer API ufa strukturalnym polom identyfikatorów SQL dekodowanym z parametru page_token (JSON w base64) przed zbudowaniem zapytań listujących. Atakujący mogący wywołać objęte podatnością API listowania pipeline'ów lub uruchomień może wstrzyknąć dane przez KeyFieldName lub SortByFieldName, w tym ścieżki metryk listowania uruchomień v1beta1 i v2beta1, i odczytać dane dostępne dla konta bazy danych serwera API w różnych przestrzeniach nazw. Modyfikacja bazy danych nie została potwierdzona.
- CVE-2026-88983Średnie
W Kubeflow Pipelines przed wersją 2.17.0 ścieżki tworzenia pipeline'ów i wersji pipeline'ów w serwerze API pobierają podany przez wywołującego pipelineURL bez ograniczenia miejsca docelowego. Uwierzytelniony wywołujący z uprawnieniem do tworzenia pipeline'u lub jego wersji może wysyłać żądania z serwera API do usług wewnętrznych i obserwować ograniczony wyciek informacji o kodach statusu. Ujawnienie treści odpowiedzi, kradzież poświadczeń oraz wpływ na integralność lub dostępność nie zostały potwierdzone.
- CVE-2026-77596Krytyczne
W Kubeflow Pipelines przed wersją 2.18.0 punkty końcowe HTTP do przesyłania pipeline'ów i ich wersji nie wykonują kontroli SubjectAccessReview, gdy docelowa przestrzeń nazw jest pusta, a REQUIRE_NAMESPACE_FOR_PIPELINES domyślnie wynosi false. Użytkownik o niskich uprawnieniach może tworzyć współdzielone pipeline'y lub wstrzykiwać własne wersje do istniejących pipeline'ów bez wymaganych uprawnień zapisu. Jeśli serwer API jest bezpośrednio osiągalny bez proxy uwierzytelniającego, ten sam obejściowy mechanizm może wykorzystać nieuwierzytelniony wywołujący.
- CVE-2026-54745Krytyczne
Kubeflow Pipelines przed wersją 2.17.0 zawiera nieuwierzytelnioną podatność SSRF w trasie /_proxy/ w frontend/server/proxy-middleware.ts. Funkcja _routePathWithReferer() akceptuje dowolny adres URL HTTP lub HTTPS kontrolowany przez atakującego i przekazuje go do createProxyMiddleware bez listy dozwolonych hostów ani filtrowania adresów loopback, link-local, RFC1918 czy klastrowych. Trasa jest dostępna bez autoryzacji, co pozwala na przekazywanie żądań do wewnętrznych usług i zwracanie odpowiedzi atakującemu. Problem naprawiono w wersji 2.17.0.
- CVE-2026-118761Wysokie
W Kubeflow Pipelines przed wersją 2.18.0 serwer API dekompresował przesyłane archiwa pipeline'ów bez odpowiedniego ograniczenia rozmiaru rozpakowywanych danych podczas lokalizowania lub odczytu pliku pipeline'u. Małe archiwum ZIP lub tar skompresowane gzipem może zużyć nieproporcjonalnie dużo pamięci i wyczerpać zasoby serwera API. Przetwarzanie przesyłania wieloczęściowego pipeline'ów i wersji pipeline'ów wykonuje dekompresję przed autoryzacją przestrzeni nazw, więc osiągalny wywołujący nie potrzebuje pozytywnej decyzji autoryzacyjnej o utworzeniu pipeline'u. Problem naprawiono w wersji 2.18.0.
Oryginalny opis (angielski, źródło NVD)
Kubeflow Pipelines enables users to build and deploy portable, scalable machine learning workflows. Prior to 2.18.0, the frontend GET /artifacts/get route accepts source=http or source=https with caller-controlled bucket and key values, and isAllowedResourceName permits an all-digit decimal host that the URL parser converts to an IPv4 address. The default ALLOWED_ARTIFACT_DOMAIN_REGEX and authorization-disabled standalone configuration allow an unauthenticated caller to fetch internal HTTP resources and receive their response body. In the authenticated multi-user configuration, the same destination-validation defect is reachable by a low-privilege tenant with a valid identity and authorized namespace. Cloud credential disclosure depends on reachable metadata services and attached roles, and the issue does not establish IMDSv2 bypass or credential access when metadata is blocked. This issue is fixed in version 2.18.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

