CRITICAL🇬🇧 English

CVE-2024-3573

MLflow: Local File Inclusion przez nieprawidłowe parsowanie URI

CVSS 9.3v3.1pub. 2024-04-16upd. 2025-02-03

MLflow jest podatny na atak Local File Inclusion (LFI) wynikający z nieprawidłowego parsowania URI, który umożliwia nieuwierzytelnionym atakującym odczyt dowolnych plików na serwerze. Podatność jest krytyczna ze względu na brak wymagań co do uwierzytelnienia i możliwość obejścia mechanizmów zabezpieczających.

Pokaż oryginał (EN)

mlflow/mlflow is vulnerable to Local File Inclusion (LFI) due to improper parsing of URIs, allowing attackers to bypass checks and read arbitrary files on the system. The issue arises from the 'is_local_uri' function's failure to properly handle URIs with empty or 'file' schemes, leading to the misclassification of URIs as non-local. Attackers can exploit this by crafting malicious model versions with specially crafted 'source' parameters, enabling the reading of sensitive files within at least two directory levels from the server's root.

🤖 Analiza AI
Jak działa

Podatność tkwi w funkcji 'is_local_uri', która nieprawidłowo obsługuje URI z pustym schematem lub schematem 'file', błędnie klasyfikując je jako adresy nielokalne. Atakujący może spreparować złośliwą wersję modelu ze specjalnie skonstruowanym parametrem 'source', zawierającym odpowiednio spreparowane URI. Dzięki temu mechanizm weryfikacji zostaje ominięty (path traversal), a serwer odczytuje i zwraca pliki spoza dozwolonego katalogu — co najmniej z dwóch poziomów katalogów od katalogu głównego serwera.

Skutki

Atakujący bez uwierzytelnienia może odczytać dowolne wrażliwe pliki na serwerze, takie jak konfiguracje, klucze API, dane uwierzytelniające czy inne poufne informacje systemowe. Atak może prowadzić do poważnego naruszenia poufności danych przy ograniczonym wpływie na integralność systemu.

Mitygacja

Należy zastosować patch dostępny w repozytorium MLflow — commit 438a450714a3ca06285eeea34bdc6cf79d7f6cbc. Zaleca się aktualizację do wersji zawierającej powyższą poprawkę zgodnie z referencjami producenta oraz ograniczenie dostępu sieciowego do instancji MLflow wyłącznie do zaufanych użytkowników.

Kogo dotyczy

MLflow (lfprojects/mlflow) — wersje wskazane w referencjach producenta

Uwagi

Szczegóły podatności zostały zgłoszone i opublikowane za pośrednictwem platformy huntr.com (bounty ID: 8ea058a7-4ef8-4baf-9198-bc0147fc543c). Podatność obejmuje dwie klasy CWE: CWE-29 (Path Traversal) oraz CWE-22 (Improper Limitation of a Pathname to a Restricted Directory).

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N
  • Lfprojects Mlflow

    APP
    Lfprojects
    < 2.10.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Path Traversal
CWE
Referencje

Powiązane podatności

CVE-2026-2651CRITICAL9.0PL ✓ten sam produkt

MLflow: nieautoryzowany dostęp do endpointów multipart upload (RCE)

CVE-2026-2611CRITICAL9.6PL ✓ten sam produkt

MLflow: nieprawidłowa walidacja origin umożliwia RCE przez cross-origin request

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

Brak uwierzytelnienia w endpointach FastAPI jobs w MLflow (Auth Bypass / RCE)

CVE-2025-15379CRITICAL9.8PL ✓ten sam produkt

Command injection w MLflow podczas inicjalizacji kontenera modelu

CVE-2025-15036CRITICAL10.0PL ✓ten sam produkt

Path traversal w MLflow — nadpisanie plików i eskalacja uprawnień