CVE-2025-14287: mlflow/mlflow · Improper Control of Generation of Code
Affects mlflow/mlflowSource CVE Database V5
Not known to be exploited · CVSS 7.5 High : upgrade to 3.7.0 soon.
Data as of 26 Oct 2026, 06:26 UTC
- EPSS
- 1.4% chance of exploitation in 30 days – higher than 73% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 3.7.0
CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 15 Mar 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 2026-10-26.
What to do
Upgrade mlflow to 3.7.0.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| mlflowmlflow/mlflow | Affected
| Fixed in– |
PyPImlflowpkg:pypi/mlflowOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
A fix is available in mlflow version 3.7.0 and later. Users should upgrade to version 3.7.0 or newer to remediate this vulnerability. There is no indication from the vendor advisory that the issue is already mitigated or requires no action. Until upgrading, avoid using untrusted input for the --container parameter or restrict access to trusted users only.
Description
A command injection vulnerability exists in mlflow/mlflow versions before v3.7.0, specifically in the `mlflow/sagemaker/__init__.py` file at lines 161-167. The vulnerability arises from the direct interpolation of user-supplied container image names into shell commands without proper sanitization, which are then executed using `os.system()`. This allows attackers to execute arbitrary commands by supplying malicious input through the `--container` parameter of the CLI. The issue affects environments where MLflow is used, including development setups, CI/CD pipelines, and cloud deployments.