CVE-2025-0453: MLflow: GraphQL DoS disables ML tracking server

GHSA-49m6-vrr9-2cqm HIGH PoC AVAILABLE CISA: TRACK*
Published March 20, 2025
CISO Take

MLflow's GraphQL endpoint allows unauthenticated attackers to exhaust all server workers via batched query flooding, taking down your entire ML experiment tracking and model registry. If MLflow is accessible beyond your internal network perimeter, treat this as high priority. Immediately restrict network access to the /graphql endpoint and audit firewall rules for MLflow deployments.

Risk Assessment

CVSS 7.5 High with zero authentication required and low attack complexity makes this trivially exploitable by any network-adjacent attacker. EPSS is low (0.136%) suggesting no observed mass exploitation yet, but the exploit mechanism is simple enough that proof-of-concept code on huntr.com lowers the practical bar significantly. Enterprise risk depends entirely on exposure: internal-only MLflow deployments are lower risk, but MLflow instances exposed via shared cloud environments, Kubernetes ingress without auth proxy, or developer shortcuts are genuinely vulnerable. No patch is available as of publication date.

Affected Systems

Package Ecosystem Vulnerable Range Patched
mlflow pip No patch
25.8K OpenSSF 4.7 624 dependents Pushed yesterday 24% patched ~64d to patch Full package profile →
mlflow pip <= 2.17.2 No patch
25.8K OpenSSF 4.7 624 dependents Pushed yesterday 24% patched ~64d to patch Full package profile →

Severity & Risk

CVSS 3.1
7.5 / 10
EPSS
0.3%
chance of exploitation in 30 days
Higher than 55% of all CVEs
Exploitation Status
Exploit Available
Exploitation: MEDIUM
Sophistication
Trivial
Exploitation Confidence
medium
CISA SSVC: Public PoC
Public PoC indexed (trickest/cve)
Composite signal derived from CISA KEV, CISA SSVC, EPSS, trickest/cve, and Nuclei templates.

Attack Surface

AV AC PR UI S C I A
AV Network
AC Low
PR None
UI None
S Unchanged
C None
I None
A High

Recommended Action

6 steps
  1. IMMEDIATE

    Restrict /graphql endpoint access at the network layer—MLflow should never be directly internet-exposed; enforce this via firewall rules or reverse proxy ACLs.

  2. SHORT-TERM: Deploy an API gateway or WAF rule to rate-limit requests to /graphql per source IP.

  3. WORKAROUND

    If MLflow must be accessible, add an authenticated reverse proxy (nginx/Traefik with basic auth or SSO) in front of all MLflow endpoints.

  4. DETECTION

    Monitor for abnormal spikes in /graphql request volume or worker saturation in MLflow metrics; alert on CPU/thread exhaustion.

  5. PATCH

    No fixed version confirmed—monitor mlflow GitHub releases and huntr advisory for patch availability; upgrade immediately when released.

  6. AUDIT

    Inventory all MLflow instances across your environments, including shadow deployments by data science teams.

CISA SSVC Assessment

Decision Track*
Exploitation poc
Automatable No
Technical Impact partial

Source: CISA Vulnrichment (SSVC v2.0). Decision based on the CISA Coordinator decision tree.

Classification

Compliance Impact

This CVE is relevant to:

EU AI Act
Art.9 - Risk management system
ISO 42001
A.10.2 - AI system operational continuity
NIST AI RMF
MS-2.5 - AI system availability and resilience monitoring
OWASP LLM Top 10
LLM10 - Unbounded Consumption

Frequently Asked Questions

What is CVE-2025-0453?

MLflow's GraphQL endpoint allows unauthenticated attackers to exhaust all server workers via batched query flooding, taking down your entire ML experiment tracking and model registry. If MLflow is accessible beyond your internal network perimeter, treat this as high priority. Immediately restrict network access to the /graphql endpoint and audit firewall rules for MLflow deployments.

Is CVE-2025-0453 actively exploited?

Proof-of-concept exploit code is publicly available for CVE-2025-0453, increasing the risk of exploitation.

How to fix CVE-2025-0453?

1. IMMEDIATE: Restrict /graphql endpoint access at the network layer—MLflow should never be directly internet-exposed; enforce this via firewall rules or reverse proxy ACLs. 2. SHORT-TERM: Deploy an API gateway or WAF rule to rate-limit requests to /graphql per source IP. 3. WORKAROUND: If MLflow must be accessible, add an authenticated reverse proxy (nginx/Traefik with basic auth or SSO) in front of all MLflow endpoints. 4. DETECTION: Monitor for abnormal spikes in /graphql request volume or worker saturation in MLflow metrics; alert on CPU/thread exhaustion. 5. PATCH: No fixed version confirmed—monitor mlflow GitHub releases and huntr advisory for patch availability; upgrade immediately when released. 6. AUDIT: Inventory all MLflow instances across your environments, including shadow deployments by data science teams.

What systems are affected by CVE-2025-0453?

This vulnerability affects the following AI/ML architecture patterns: ML experiment tracking, model registry, MLOps pipelines, training pipelines, CI/CD for ML.

What is the CVSS score for CVE-2025-0453?

CVE-2025-0453 has a CVSS v3.1 base score of 7.5 (HIGH). The EPSS exploitation probability is 0.32%.

Technical Details

NVD Description

In mlflow/mlflow version 2.17.2, the `/graphql` endpoint is vulnerable to a denial of service attack. An attacker can create large batches of queries that repeatedly request all runs from a given experiment. This can tie up all the workers allocated by MLFlow, rendering the application unable to respond to other requests. This vulnerability is due to uncontrolled resource consumption.

Exploitation Scenario

An attacker discovers an exposed MLflow tracking server (common in cloud environments with permissive security groups or Kubernetes LoadBalancer services). They send a burst of GraphQL batch queries to /api/2.0/graphql, each requesting all runs across large experiments. MLflow's worker pool—typically 4-8 Gunicorn workers—becomes fully occupied processing these expensive database queries. Within seconds, legitimate requests queue indefinitely and time out. The attacker sustains the attack with minimal bandwidth, maintaining a small continuous stream of batch queries. Data scientists cannot log new experiments or access the model registry; automated training pipelines fail; on-call engineers scramble to diagnose what appears to be an infrastructure issue rather than an attack.

CVSS Vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Timeline

Published
March 20, 2025
Last Modified
October 15, 2025
First Seen
March 20, 2025

Related Vulnerabilities