Skip to content
Heist/ feed
Back to feed
Medium

Authorization Bypass in SearchModelVersions in mlflow/mlflow

Type: advisorySources: OSV

In mlflow/mlflow versions up to 3.9.0, the `SearchModelVersions` REST API endpoint and the `mlflowSearchModelVersions` GraphQL query lack proper per-model authorization checks when basic authentication is enabled. This allows any authenticated user to enumerate all model versions across all registered models, regardless of their permission level. The issue arises due to the absence of `SearchModelVersions` in the `BEFORE_REQUEST_VALIDATORS` and `AFTER_REQUEST_HANDLERS` for the REST API, and its omission from `GraphQLAuthorizationMiddleware.PROTECTED_FIELDS` for GraphQL. This vulnerability can expose sensitive information such as model names, version descriptions, source URIs, tags, and other metadata, potentially revealing proprietary or confidential details in multi-tenant environments. The issue is resolved in version 3.10.0.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-2734
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 17:47 UTC · Revision 1

Source evidence

Authorization Bypass in SearchModelVersions in mlflow/mlflow

core-osv · Original source

Published 21 May 2026, 03:49 UTC

In mlflow/mlflow versions up to 3.9.0, the `SearchModelVersions` REST API endpoint and the `mlflowSearchModelVersions` GraphQL query lack proper per-model authorization checks when basic authentication is enabled. This allows any authenticated user to enumerate all model versions across all registered models, regardless of their permission level. The issue arises due to the absence of `SearchModelVersions` in the `BEFORE_REQUEST_VALIDATORS` and `AFTER_REQUEST_HANDLERS` for the REST API, and its omission from `GraphQLAuthorizationMiddleware.PROTECTED_FIELDS` for GraphQL. This vulnerability can expose sensitive information such as model names, version descriptions, source URIs, tags, and other metadata, potentially revealing proprietary or confidential details in multi-tenant environments. The issue is resolved in version 3.10.0.

osv:CVE-2026-2734
Complete source record
{
  "id": "b51579af3bff5c937bcdfeb132e42dbf7f3ea06db8e85d1db82e735eb3209a21",
  "url": "https://osv.dev/vulnerability/CVE-2026-2734",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Authorization Bypass in SearchModelVersions in mlflow/mlflow",
    "summary": "In mlflow/mlflow versions up to 3.9.0, the `SearchModelVersions` REST API endpoint and the `mlflowSearchModelVersions` GraphQL query lack proper per-model authorization checks when basic authentication is enabled. This allows any authenticated user to enumerate all model versions across all registered models, regardless of their permission level. The issue arises due to the absence of `SearchModelVersions` in the `BEFORE_REQUEST_VALIDATORS` and `AFTER_REQUEST_HANDLERS` for the REST API, and its omission from `GraphQLAuthorizationMiddleware.PROTECTED_FIELDS` for GraphQL. This vulnerability can expose sensitive information such as model names, version descriptions, source URIs, tags, and other metadata, potentially revealing proprietary or confidential details in multi-tenant environments. The issue is resolved in version 3.10.0.",
    "evidence": "osv:CVE-2026-2734",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-2734",
      "aliases": [
        "BIT-mlflow-2026-2734",
        "CVE-2026-2734",
        "GHSA-w5xq-c4pf-ghq7",
        "PYSEC-2026-2660"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/mlflow/mlflow",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "d0b97413e383796f1ca742b20cac74543185816c"
                },
                {
                  "fixed": "6989066af33fdcb03588fd71a1a67f8fc5ef12c9"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:lfprojects:mlflow:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "3.10.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "6989066af33fdcb03588fd71a1a67f8fc5ef12c9"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v3.10.0rc0",
            "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-2026-2734.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:31.263688135Z",
      "provider": "osv",
      "references": [
        "https://huntr.com/bounties/d632f783-b2c7-4a3b-af5e-1d693e841c08",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/2xxx/CVE-2026-2734.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-2734",
        "https://github.com/mlflow/mlflow/commit/6989066af33fdcb03588fd71a1a67f8fc5ef12c9"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-284"
        ],
        "cna_assigner": "@huntr_ai",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/2xxx/CVE-2026-2734.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-2734",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 497991,
  "published_at": "2026-05-21T03:49:38.297+00:00"
}