Skip to content
Heist/ feed
Back to feed
High

Server-Side Request Forgery (SSRF) in mlflow/mlflow

Type: advisorySources: OSV

A Server-Side Request Forgery (SSRF) vulnerability exists in MLflow versions prior to 3.9.0. The `_create_webhook()` function in `mlflow/server/handlers.py` accepts a user-controlled `url` parameter without validation, and the `_send_webhook_request()` function in `mlflow/webhooks/delivery.py` sends HTTP POST requests to this attacker-controlled URL. This allows an authenticated attacker to force the MLflow backend to send HTTP requests to internal services, cloud metadata endpoints, or arbitrary external servers. The lack of input sanitization, URL scheme filtering, or allowlist validation on the webhook URL enables exploitation, potentially leading to cloud credential theft, internal network access, and data exfiltration.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-2393
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 18:07 UTC · Revision 1

Source evidence

Server-Side Request Forgery (SSRF) in mlflow/mlflow

core-osv · Original source

Published 11 May 2026, 16:30 UTC

A Server-Side Request Forgery (SSRF) vulnerability exists in MLflow versions prior to 3.9.0. The `_create_webhook()` function in `mlflow/server/handlers.py` accepts a user-controlled `url` parameter without validation, and the `_send_webhook_request()` function in `mlflow/webhooks/delivery.py` sends HTTP POST requests to this attacker-controlled URL. This allows an authenticated attacker to force the MLflow backend to send HTTP requests to internal services, cloud metadata endpoints, or arbitrary external servers. The lack of input sanitization, URL scheme filtering, or allowlist validation on the webhook URL enables exploitation, potentially leading to cloud credential theft, internal network access, and data exfiltration.

osv:CVE-2026-2393
Complete source record
{
  "id": "70d3d912c1426b8b064001868d12b96cb27a0bd9c21b1ca82c368e3ae1b266fc",
  "url": "https://osv.dev/vulnerability/CVE-2026-2393",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Server-Side Request Forgery (SSRF) in mlflow/mlflow",
    "summary": "A Server-Side Request Forgery (SSRF) vulnerability exists in MLflow versions prior to 3.9.0. The `_create_webhook()` function in `mlflow/server/handlers.py` accepts a user-controlled `url` parameter without validation, and the `_send_webhook_request()` function in `mlflow/webhooks/delivery.py` sends HTTP POST requests to this attacker-controlled URL. This allows an authenticated attacker to force the MLflow backend to send HTTP requests to internal services, cloud metadata endpoints, or arbitrary external servers. The lack of input sanitization, URL scheme filtering, or allowlist validation on the webhook URL enables exploitation, potentially leading to cloud credential theft, internal network access, and data exfiltration.",
    "evidence": "osv:CVE-2026-2393",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-2393",
      "aliases": [
        "BIT-mlflow-2026-2393",
        "CVE-2026-2393",
        "GHSA-65h7-c7c4-mghx",
        "PYSEC-2026-2219"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/mlflow/mlflow",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "cf3d582a7b8a6f234e4d28ef6987bb8076c6ee54"
                },
                {
                  "fixed": "64aa0ab7207f9c649b59ba1a5f40d82196817389"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:lfprojects:mlflow:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "fixed": "3.9.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "range": [
                      {
                        "fixed": "64aa0ab7207f9c649b59ba1a5f40d82196817389"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v3.9.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-2393.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:22.232377085Z",
      "provider": "osv",
      "references": [
        "https://huntr.com/bounties/04ef100d-06b5-4a70-95b1-b7be23aa8150",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/2xxx/CVE-2026-2393.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-2393",
        "https://github.com/mlflow/mlflow/commit/64aa0ab7207f9c649b59ba1a5f40d82196817389"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-918"
        ],
        "cna_assigner": "@huntr_ai",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/2xxx/CVE-2026-2393.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-2393",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 488085,
  "published_at": "2026-05-11T16:30:04.201+00:00"
}