Skip to content
Heist/ feed
Back to feed
Critical

Path Traversal Vulnerability in mlflow/mlflow

Type: advisorySources: OSV

A path traversal vulnerability exists in the `extract_archive_to_dir` function within the `mlflow/pyfunc/dbconnect_artifact_cache.py` file of the mlflow/mlflow repository. This vulnerability, present in versions before v3.7.0, arises due to the lack of validation of tar member paths during extraction. An attacker with control over the tar.gz file can exploit this issue to overwrite arbitrary files or gain elevated privileges, potentially escaping the sandbox directory in multi-tenant or shared cluster environments.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2025-15036
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 22:07 UTC · Revision 1

Source evidence

Path Traversal Vulnerability in mlflow/mlflow

core-osv · Original source

Published 30 Mar 2026, 01:16 UTC

A path traversal vulnerability exists in the `extract_archive_to_dir` function within the `mlflow/pyfunc/dbconnect_artifact_cache.py` file of the mlflow/mlflow repository. This vulnerability, present in versions before v3.7.0, arises due to the lack of validation of tar member paths during extraction. An attacker with control over the tar.gz file can exploit this issue to overwrite arbitrary files or gain elevated privileges, potentially escaping the sandbox directory in multi-tenant or shared cluster environments.

osv:CVE-2025-15036
Complete source record
{
  "id": "5368cf44cabb1dd9c251b44a087a6c310cf6f527ae18f69a84008fdcc37acfb2",
  "url": "https://osv.dev/vulnerability/CVE-2025-15036",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Path Traversal Vulnerability in mlflow/mlflow",
    "summary": "A path traversal vulnerability exists in the `extract_archive_to_dir` function within the `mlflow/pyfunc/dbconnect_artifact_cache.py` file of the mlflow/mlflow repository. This vulnerability, present in versions before v3.7.0, arises due to the lack of validation of tar member paths during extraction. An attacker with control over the tar.gz file can exploit this issue to overwrite arbitrary files or gain elevated privileges, potentially escaping the sandbox directory in multi-tenant or shared cluster environments.",
    "evidence": "osv:CVE-2025-15036",
    "products": [],
    "severity": "critical",
    "structured": {
      "id": "CVE-2025-15036",
      "aliases": [
        "BIT-mlflow-2025-15036",
        "CVE-2025-15036",
        "GHSA-vhcx-3pq2-4fvc",
        "PYSEC-2026-425"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/mlflow/mlflow",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "cf3d582a7b8a6f234e4d28ef6987bb8076c6ee54"
                },
                {
                  "fixed": "3bf6d81ac4d38654c8ff012dbd0c3e9f17e7e346"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:lfprojects:mlflow:*:-:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "3.9.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "3bf6d81ac4d38654c8ff012dbd0c3e9f17e7e346"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "nightly",
            "v3.0.0",
            "v2.2.0",
            "v1.7.0",
            "1.0.0",
            "v0.8.1",
            "v0.8.0",
            "v0.7",
            "v0.6.0",
            "v0.5.0",
            "v0.4.2",
            "v0.4.1",
            "v0.4.0",
            "v0.3.0",
            "v0.2.1",
            "v0.2.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-15036.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:40.055582960Z",
      "provider": "osv",
      "references": [
        "https://huntr.com/bounties/36c314cf-fd6e-4fb0-b9b0-1b47bcdf0eb0",
        "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-15036.json",
        "https://access.redhat.com/security/cve/CVE-2025-15036",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/15xxx/CVE-2025-15036.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2025-15036",
        "https://bugzilla.redhat.com/show_bug.cgi?id=2452925",
        "https://github.com/mlflow/mlflow/commit/3bf6d81ac4d38654c8ff012dbd0c3e9f17e7e346"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-29"
        ],
        "cna_assigner": "@huntr_ai",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/15xxx/CVE-2025-15036.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2025-15036",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 507479,
  "published_at": "2026-03-30T01:16:06.4+00:00"
}