CVE-2026-4137: MLFlow Creates a Temporary File With Insecure Permissions
In mlflow/mlflow versions prior to 3.11.0, the getorcreatenfstmpdir() function in mlflow/utils/fileutils.py creates temporary directories with world-writable permissions (0o777), and the createmodeldownloadingtmpdir() function in mlflow/pyfunc/init.py creates directories with group-writable permissions (0o770).
Published May 18, 2026 · Updated Sep 1, 2026
Affected packages
mlflow
- Ecosystem
- PyPI
- Affected
- >= 1.26.0, < 3.11.0
- Fixed in
- 3.11.0
- Check
pip show mlflow
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
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.
Credited to Chi-Song-Owen.
References
- https://nvd.nist.gov/vuln/detail/CVE-2026-4137
- https://github.com/mlflow/mlflow/commit/1dcbb0c2fbd1f446c328830e601ca13a28219b8a
- https://huntr.com/bounties/648dc30b-76c7-4433-86b8-f43d926fd8d6
- https://github.com/advisories/GHSA-4x5p-f36r-mxxr
- https://github.com/mlflow/mlflow/commit/bd8854fb2b4b168a4384ebddc6c4a0b5d56aff01
- https://github.com/pypa/advisory-database/tree/main/vulns/mlflow/PYSEC-2026-2655.yaml
- https://github.com/advisories/GHSA-f2m9-wcf4-cwwx
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
More MLflow vulnerabilities
All MLflow entriesGHSA-gqvg-gmmx-x4hm
MLFLOW_ALLOW_PICKLE_DESERIALIZATION=False safety control bypassed by mlflow.statsmodels flavor — RCE via crafted model artifact
high8.8Sep 1, 2026CVE-2026-64849
MLflow: Unauthenticated full-read SSRF in webhook delivery: _validate_webhook_url bypassed via unvalidated HTTP redirects (and DNS rebinding)
critical9.3ExploitedAug 17, 2026CVE-2026-71211
MLflow AI Gateway permits SSRF through an unvalidated api_base
high7.1No fixAug 5, 2026CVE-2026-8147
MLflow: trace API endpoints lack proper authorization validators
high8.1Jul 2, 2026CVE-2026-10803
MLflow: Deterministic sampling in dataset digest enables predictable collisions
low3.6Jun 4, 2026CVE-2026-4035
MLflow: Environment variable injection in AI Gateway secrets enables server-side credential exfiltration
critical9.1Jun 3, 2026
