CVE-2026-8147
WysokieCVSS 8.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 46 - wyżej niż 46% wszystkich znanych CVE
Streszczenie
W MLflow w wersjach przed 3.14.0, przy włączonym uwierzytelnianiu, punkty końcowe API śledzenia (trace) nie mają odpowiednich walidatorów autoryzacji. Pozwala to każdemu uwierzytelnionemu użytkownikowi na ominięcie kontroli autoryzacji na poziomie eksperymentu dla wszystkich operacji na śladach, w tym odczytu, usuwania i modyfikacji śladów w eksperymentach, do których nie ma uprawnień. Problem wynika z procedury `_before_request`, która nie rejestruje walidatorów autoryzacji dla punktów końcowych śledzenia, co powoduje, że żądania są przetwarzane bez walidacji.
Ocena ryzyka
Luka może prowadzić do ujawnienia wrażliwych danych, zniszczenia dzienników audytu oraz nieautoryzowanych modyfikacji, co stanowi poważne ryzyko dla poufności i integralności danych w organizacji.
Rekomendacja
Należy niezwłocznie zaktualizować MLflow do wersji 3.14.0 lub nowszej, która zawiera poprawkę usuwającą tę podatność.
Inne podatności w MLflow
Zobacz wszystkie- CVE-2026-2393Wysokie
W wersjach MLflow przed 3.9.0 występuje podatność typu Server-Side Request Forgery (SSRF). Funkcja `_create_webhook()` akceptuje parametr `url` kontrolowany przez użytkownika bez walidacji, co pozwala atakującemu na wymuszenie wysyłania żądań HTTP do wewnętrznych usług lub zewnętrznych serwerów.
- CVE-2026-116692Krytyczne
W MLflow w wersjach od 3.12.0rc0 do 3.17.0 deserializacja scorerów zewnętrznych w mlflow/genai/scorers/base.py akceptuje klasy potomne modułów z listy dozwolonych zamiast wymagać dokładnie dozwolonego modułu. Atakujący może umieścić moduł Pythona w zapisywalnym pakiecie dozwolonym i wywołać go przez endpoint /ajax-api/3.0/mlflow/scorer/invoke, co prowadzi do wykonania kodu. Wersja 3.17.0 naprawia problem.
- CVE-2026-64849KrytyczneAktywnie exploitowane
MLflow w wersjach od 3.3.0 do 3.15.0 zawiera podatność SSRF w nieuwierzytelnionym punkcie końcowym POST /api/2.0/mlflow/webhooks/{id}/test. Walidacja adresu URL odbywa się tylko dla oryginalnego adresu, a mechanizm dostarczania webhooków podąża za przekierowaniami i ponownie rozwiązuje nazwę hosta bez przypięcia zwalidowanego adresu. Atakujący może dzięki temu dotrzeć do wewnętrznych usług lub usług metadanych chmury i odczytać response_status oraz response_body.
- CVE-2026-2651Krytyczne
Podatność w MLflow w wersjach do 3.10.1.dev0 umożliwia nieautoryzowany dostęp do endpointów przesyłania wieloczęściowego (MPU) przy włączonym trybie `--serve-artifacts`. Logika autoryzacji nie wymusza sprawdzania uprawnień na poziomie zasobów dla endpointów `/mlflow-artifacts/mpu/*`, co pozwala atakującym nadpisywać artefakty innych użytkowników. Może to prowadzić do nieautoryzowanego zapisu między użytkownikami, zatrucia łańcucha dostaw modeli oraz zdalnego wykonania kodu po załadowaniu skompromitowanych modeli.
- CVE-2026-2611Krytyczne
W MLflow w wersji 3.9.0 funkcja Asystenta MLflow zawiera podatność polegającą na nieprawidłowej walidacji pochodzenia żądań w punktach końcowych /ajax-api. Umożliwia to zdalnemu atakującemu wykorzystanie żądań międzyoriginowych ze złośliwej strony internetowej do interakcji z Asystentem MLflow działającym na lokalnym komputerze ofiary.
- CVE-2026-0545Krytyczne
W mlflow/mlflow endpointy FastAPI dla zadań pod `/ajax-api/3.0/jobs/*` nie są chronione uwierzytelnianiem ani autoryzacją, gdy włączona jest aplikacja `basic-auth`. Nawet jeśli włączono uwierzytelnianie podstawowe, każdy klient sieciowy może bez poświadczeń przesyłać, odczytywać, wyszukiwać i anulować zadania.
- CVE-2025-15379Krytyczne
W MLflow w wersji 3.8.0 wykryto podatność na wstrzykiwanie poleceń w kodzie inicjalizującym kontener serwowania modeli. Funkcja `_install_model_dependencies_to_env()` bezpośrednio interpoluje zależności z pliku `python_env.yaml` do polecenia powłoki bez sanityzacji, co umożliwia atakującemu wykonanie dowolnych poleceń poprzez dostarczenie złośliwego artefaktu modelu.
- CVE-2025-15036Krytyczne
W bibliotece mlflow przed wersją 3.7.0 wykryto podatność na ścieżkę przejścia (path traversal) w funkcji `extract_archive_to_dir`. Brak walidacji ścieżek wewnątrz archiwum tar pozwala atakującemu na nadpisanie dowolnych plików lub eskalację uprawnień.
- CVE-2025-15031Krytyczne
Podatność w procesie ekstrakcji pyfunc w MLflow umożliwia zapis dowolnych plików z powodu nieprawidłowego obsługiwania wpisów archiwum tar. Użycie `tarfile.extractall` bez walidacji ścieżki pozwala spreparowanym plikom tar.gz zawierającym `..` lub ścieżki absolutne na opuszczenie docelowego katalogu ekstrakcji.
- CVE-2025-11200Krytyczne
W MLflow występuje podatność polegająca na słabych wymaganiach dotyczących haseł, umożliwiająca obejście uwierzytelniania. Atakujący nie musi się uwierzytelniać; problem wynika ze słabych wymagań dotyczących haseł i może zostać wykorzystany do obejścia uwierzytelniania w systemie.
Oryginalny opis (angielski, źródło NVD)
In MLflow versions prior to 3.14.0, when running with authentication enabled, the trace API endpoints lack proper authorization validators. This allows any authenticated user to bypass experiment-level authorization controls on all trace operations, including reading, deleting, and modifying traces on experiments they do not have permission to access. The issue arises from the `_before_request` handler, which does not register authorization validators for trace endpoints, resulting in requests proceeding without validation. This vulnerability can expose sensitive data, destroy audit logs, and allow unauthorized modifications.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

