Podatność w MLflow umożliwia nieautoryzowanym użytkownikom nadpisywanie artefaktów innych użytkowników poprzez endpointy multipart upload. W konsekwencji może prowadzić do zatrucia łańcucha dostaw modeli ML oraz wykonania dowolnego kodu (RCE).
▸ Pokaż oryginał (EN)
A vulnerability in MLflow versions <=3.10.1.dev0 allows unauthorized access to multipart upload (MPU) endpoints when the `--serve-artifacts` mode is enabled. The authorization logic does not enforce resource-level permission checks for `/mlflow-artifacts/mpu/*` endpoints, enabling attackers to overwrite artifacts belonging to other users. This can lead to unauthorized cross-user writes, model supply chain poisoning, and arbitrary code execution when compromised models are loaded. The issue is resolved in version 3.10.0.
Gdy MLflow działa w trybie `--serve-artifacts`, logika autoryzacji nie wymusza sprawdzania uprawnień na poziomie zasobów dla endpointów `/mlflow-artifacts/mpu/*`. Zalogowany atakujący może wysyłać żądania do tych endpointów i nadpisywać artefakty należące do innych użytkowników. Przesłanie złośliwego modelu w miejsce legalnego skutkuje tym, że każdy użytkownik ładujący ten model wykona kod kontrolowany przez atakującego.
Atakujący może nadpisywać modele i artefakty innych użytkowników (cross-user write), co prowadzi do zatrucia łańcucha dostaw modeli ML (model supply chain poisoning) oraz wykonania dowolnego kodu (RCE) na systemach ładujących skompromitowane modele.
Należy zaktualizować MLflow do wersji 3.10.0 lub nowszej, w której opisany problem został rozwiązany. Patch dostępny w referencjach producenta (commit d7290811d8f3c95366d80109424edc1fb1ad966f).
MLflow w wersjach <= 3.10.1.dev0 z włączonym trybem `--serve-artifacts`
Pomimo że opis wskazuje poprawkę w wersji 3.10.0, podatność obejmuje również wersję deweloperską 3.10.1.dev0 — organizacje korzystające z kompilacji deweloperskich powinny zwrócić szczególną uwagę na aktualizację. Podatność zgłoszona za pośrednictwem platformy Huntr.
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:HLfprojects Mlflow
APPLfprojects≤ 3.10.1
Powiązane podatności
MLflow: nieprawidłowa walidacja origin umożliwia RCE przez cross-origin request
Brak uwierzytelnienia w endpointach FastAPI jobs w MLflow (Auth Bypass / RCE)
Command injection w MLflow podczas inicjalizacji kontenera modelu
Path traversal w MLflow — nadpisanie plików i eskalacja uprawnień
MLflow: path traversal w ekstrakcji archiwów tar umożliwia RCE