MLflow allows an unauthenticated remote attacker to read arbitrary files from the server's filesystem
A vulnerability in the `_create_model_version()` handler of `mlflow/server/handlers.py` in mlflow/mlflow versions 3.9.0 and earlier allows an unauthenticated remote attacker to read arbitrary files from the server's filesystem. The issue arises when a `CreateModelVersion` request includes the tag `mlflow.prompt.is_prompt`, which bypasses source path validation. This enables an attacker to store an arbitrary local filesystem path as the model version source. The `get_model_version_artifact_handler()` function later uses this source to serve files without verifying the model version's prompt status, leading to a complete confidentiality compromise. This issue is fixed in version 3.10.0.
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-2614US | — | — | ||
A vulnerability in the `_create_model_version()` handler of `mlflow/server/handlers.py` in mlflow/mlflow versions 3.9.0 and earlier allows an unauthenticated remote attacker to rea… | ||||
references
External citations — patches, advisories, analysis.
- https://github.com/advisories/GHSA-42h5-h8qh-vv9vADVISORY
- https://github.com/mlflow/mlflowPACKAGE
- https://github.com/mlflow/mlflow/commit/6e801f4259d96804c73107315b24cef0f6aa115aWEB
- https://huntr.com/bounties/19380271-3fbf-4beb-987e-6fd7069c55e6WEB
- https://nvd.nist.gov/vuln/detail/CVE-2026-2614ADVISORY
- https://pypi.org/project/mlflowPACKAGE
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan