Skip to main content
← All vulnerabilities
CVE-2026-2652GHSA-75CM-X2W3-8MGFBIT-MLFLOW-2026-2652PYSEC-2026-2221

Authentication Bypass in mlflow/mlflow

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 3.10.0, 3.11.0
1 Nuclei template
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

A vulnerability in mlflow/mlflow versions 3.9.0 and earlier allows unauthenticated access to certain FastAPI routes when the server is started with authentication enabled (`--app-name basic-auth`) and served via uvicorn (ASGI). The FastAPI permission middleware only enforces authentication on `/gateway/` routes, leaving other routes such as the Job API (`/ajax-api/3.0/jobs/*`) and the OpenTelemetry trace ingestion API (`/v1/traces`) unprotected. This allows unauthenticated remote attackers to submit jobs, read job results, cancel running jobs, and inject arbitrary trace data into experiments. The issue arises from an architectural mismatch between Flask and FastAPI authentication mechanisms, where the `_find_fastapi_validator()` function fails to handle non-`/gateway/` paths, resulting in a complete authentication bypass. This vulnerability is fixed in version 3.10.0.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated
  4. EPSS reached 10%

    FIRST estimates at least a 10% chance of exploitation in the next 30 days

Affected versions

  • mlflow mlflow/mlflow

    fixed in 3.10.0

  • mlflowPyPI

    fixed in 3.11.0

  • mlflowPyPI

    fixed in 3.10.0

References 3

huntr.com

GitHub · mlflow/mlflow

GitHub · projectdiscovery/nuclei-templates