{"id":"CVE-2026-8147","published":"2026-07-02T07:32:58Z","modified":"2026-07-02T12:28:31Z","title":"Authorization Bypass in mlflow/mlflow","vendor":"mlflow","product":"mlflow/mlflow","tier":"tail","description":{"text":"In MLflow versions prior to 3.14.0, when running with authentication enabled, the trace API endpoints lack proper authorization validators. This allows any authenticated user to bypass experiment-level authorization controls on all trace operations, including reading, deleting, and modifying traces on experiments they do not have permission to access. The issue arises from the `_before_request` handler, which does not register authorization validators for trace endpoints, resulting in requests proceeding without validation. This vulnerability can expose sensitive data, destroy audit logs, and allow unauthorized modifications.","provenance":"source","from":"CVE.org"},"cvss":{"score":8.1,"severity":"HIGH","version":"3.0","vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N","provenance":"source","from":"CVE.org CNA"},"epss":{"score":0.00548,"percentile":0.4575,"provenance":"source"},"cwes":[{"id":"CWE-284","name":"Improper Access Control"}],"references":[{"url":"https://huntr.com/bounties/b00c3ddd-373e-492f-9bf0-41a28bb21ed5","tags":[]},{"url":"https://github.com/mlflow/mlflow/commit/f9b1eb510478570609ef451984a255775aa4b937","tags":[]}],"priority":{"score":14.8,"factors":[{"name":"EPSS percentile","points":9.15},{"name":"CVSS severity","points":5.67}]},"vendorSlug":"mlflow","affectedVersions":[{"vendor":"mlflow","product":"mlflow/mlflow","versions":[">= unspecified, < 3.14.0"]}],"affected":[{"ecosystem":"PyPI","package":"mlflow","vulnerableRanges":[">=2.14.0rc0, <3.13.0rc0"],"patched":["3.13.0rc0"],"from":["GHSA-2cm6-r77w-6g96","PYSEC-2026-3686"],"provenance":"source"}],"euvd":{"id":"EUVD-2026-41257","exploited":false,"provenance":"source"},"lineage":{"packageHistory":[{"cve":"CVE-2026-4035","published":"2026-06-03","fixed":"3.11.0","kev":false},{"cve":"CVE-2026-4137","published":"2026-05-18","fixed":"3.11.0","kev":false},{"cve":"CVE-2026-33865","published":"2026-04-07","fixed":"3.11.1","kev":false,"link":{"from":"CVE-2026-33865","to":"CVE-2026-8147","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"PyPI:mlflow","fromFixed":"3.11.1","toFixed":"3.13.0rc0","daysApart":86}]}},{"cve":"CVE-2026-8147","published":"2026-07-02","fixed":"3.13.0rc0","kev":false},{"cve":"CVE-2026-64849","published":"2026-08-17","fixed":"3.15.0","kev":true,"link":{"from":"CVE-2026-8147","to":"CVE-2026-64849","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"PyPI:mlflow","fromFixed":"3.13.0rc0","toFixed":"3.15.0","daysApart":46}]}},{"cve":"CVE-2026-115886","published":"2026-10-23","fixed":"3.17.0","kev":false},{"cve":"CVE-2026-116690","published":"2026-10-27","fixed":"3.17.0","kev":false}],"package":"PyPI:mlflow"}}