CVE-2026-4137 Incomplete Fix for CVE-2025-10279: Insecure Temporary Directory Permissions in mlflow/mlflow
Local attackers can tamper with world-writable temporary model artifacts to achieve arbitrary code execution via unsafe deserialization in MLflow.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-4137?
CVE-2026-4137 is a high-severity unsafe deserialization vulnerability in Lfprojects Mlflow, published on 18 May 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In mlflow/mlflow versions prior to 3.11.0, the `get_or_create_nfs_tmp_dir()` function in `mlflow/utils/file_utils.py` creates temporary directories with world-writable permissions (0o777), and the `_create_model_downloading_tmp_dir()` function in `mlflow/pyfunc/__init__.py` creates directories with group-writable permissions (0o770). These insecure permissions allow local attackers to tamper with model artifacts, such as cloudpickle-serialized Python objects, and achieve arbitrary code execution when the tampered artifacts are deserialized via `cloudpickle.load()`. This vulnerability is particularly critical in environments with shared NFS mounts, such as Databricks, where NFS is enabled by default. The issue is a continuation of the vulnerability class addressed in CVE-2025-10279, which was only partially fixed.
Weakness: CWE-378
Which versions are affected by CVE-2026-4137?
4 open source packages ship an affected version, including mlflow. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
mlflow Bitnami | All versions | 3.11.0 |
mlflow PyPI | All versions | 3.11.0 |
mlflow PyPI | From 1.26.0 | 3.11.0 |
mlflow PyPI | From 1.26.0 | 3.11.0 |
Products include Lfprojects Mlflow.
How do I fix CVE-2026-4137?
Upgrade mlflow to 3.11.0 or later.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2026-4137 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-4137 exists.
Other vulnerabilities in Lfprojects Mlflow
- CVE-2026-64849 MLflow Server-Side Request Forgery
- CVE-2025-15379 Command Injection in mlflow/mlflow
- CVE-2024-0520 Remote Code Execution due to Full Controlled File Write in mlflow/mlflow
- CVE-2023-6977 Path Traversal: '\..\filename'
- CVE-2023-6709 Improper Neutralization of Special Elements Used in a Template Engine in mlflow/mlflow
Sources
Also known as BIT-mlflow-2026-4137, CLSA-2026-1780879898, GHSA-f2m9-wcf4-cwwx, PYSEC-2026-2655.