Skip to content
Fencer Vulns
medium 6.5

CVE-2023-6568 json

Reflected XSS via Content-Type Header in mlflow/mlflow

published 2023-12-07 2 y ago modified 2026-09-08 2 mo ago also BIT-mlflow-2023-6568 , EUVD-2023-0155 , GHSA-vwhf-3v6x-wff8 , PYSEC-2023-260

cvss
6.5
version 3.0, CNA
cisa kev
Not listed
not in CISA's catalog
epss
1.6%
EPSS 1.6% chance of exploitation in 30 days, percentile 76%
public exploits
0
none known, plus a Nuclei check

Summary

A reflected Cross-Site Scripting (XSS) vulnerability exists in the mlflow/mlflow repository, specifically within the handling of the Content-Type header in POST requests. An attacker can inject malicious JavaScript code into the Content-Type header, which is then improperly reflected back to the user without adequate sanitization or escaping, leading to arbitrary JavaScript execution in the context of the victim's browser. The vulnerability is present in the mlflow/server/auth/__init__.py file, where the user-supplied Content-Type header is directly injected into a Python formatted string and returned to the user, facilitating the XSS attack.

Patch / fix

  • pypi mlflow 2.9.0, 2.9.1
  • bitnami mlflow 2.9.1
  • mlflow mlflow/mlflow 2.9.0

Exploit prediction

1.65% chance of exploitation in the next 30 days, higher than 76% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • Nuclei template Mlflow - Cross-Site Scripting nuclei detection template
  • huntr.com https://huntr.com/bounties/816bdaaa-8153-4732-951e-b0d92fddf709 referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.0 6.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
GitHub 3.0 6.5 CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
NVD 3.1 6.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
OSV 3.1 6.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Affected packages

ecosystem package affected fixed in
pypi mlflow
<2.9.0
<2.9.1
2.9.0
2.9.1
bitnami mlflow
<2.9.1
2.9.1

Affected products

  • mlflow mlflow/mlflow

Classification

Weakness
  • CWE-79 Improper Neutralization of Input During Web Page Generation

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.