MLflow is an open source AI engineering platform for agents, large language models, and machine learning models.
CVE-2026-115886
Summary MLflow's tracking server exposes POST /ajax-api/3.0/mlflow/scorer/invoke with no authentication, and the handler reflectively instantiates an attacker-named class from attacker-supplied JSON with unconstrained constructor kwargs. With the optional trulens + trulens-providers-litellm packages installed, an unauthenticated attacker can force the server to make an outbound HTTP request to an arbitrary host of their choosing, carrying attacker-controlled headers (SSRF). Details Scorer.modelvalidatejson() reflects a class name from a JSON payload behind an import-path allowlist that never constrains the reflected attribute or its kwargs, in mlflow/genai/scorers/base.py:549-604: python data = serialized.thirdpartyscorerdata # attacker JSON modulepath = data.get("module") or "" classname = data.get("class") if not any(modulepath == m or modulepath.startswith(m + ".") for m in THIRDPARTYSCORERALLOWEDMODULES): raise MlflowException.invalidparametervalue(...) module = importlib.importmodule(modulepath) scorerclass = getattr(module, classname, None) # attribute NOT constrained ... initkwargs: dict[str, Any] = dict(data.get("kwargs") or {}) # kwargs NOT constrained ...…
Scanned for across the internet
Nuclei template
A Nuclei detection template exists for this, which means it is scanned for at internet scale rather than looked for deliberately.
Signals come from Exploit-DB, Metasploit, Nuclei and published proof-of-concept repositories. Their absence means nothing was found, not that nothing exists.
Part of the AI stack
This affects MLflow, in Training & MLOps.
Assessment
- CVSS
- 6.5 (v3.1)
- Severity
- Medium
- EPSS
- 0.00676% chance of exploitation in the next 30 days
- Known exploited
- Not listed in CISA KEV
- Exploit availability
- Nuclei template
- Published
- 23 October 2026
- Last updated
- 29 October 2026
- Affected
- pip · mlflow
- Weakness
- CWE-470, CWE-918
- Assigner
- security-advisories@github.com
CVSS vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
At the source
References
Query this programmatically
Agents can read this through the MCP endpoint, or over HTTP:
curl https://cve.zerocrew.in/api/cve/CVE-2026-115886