{"schemaVersion":3,"id":"CVE-2026-64849","aliases":["GHSA-7gwp-5pfp-969j","BIT-mlflow-2026-64849","PYSEC-2026-3687","CGA-747f-x3rc-crrx"],"status":"published","duplicateOf":null,"title":"MLflow Server-Side Request Forgery Vulnerability","description":"MLflow is an open source AI engineering platform for agents, large language models, and machine learning models. Starting in 3.3.0 and prior to 3.15.0, the unauthenticated POST /api/2.0/mlflow/webhooks/{id}/test endpoint calls _validate_webhook_url() in mlflow/utils/validation.py only for the original URL while mlflow/webhooks/delivery.py follows redirects and re-resolves the hostname without pinning the validated address, allowing attackers to reach internal or cloud metadata services and receive response_status and response_body. This issue is fixed in version 3.15.0.","dates":{"published":"2026-08-17T21:16:10.612Z","modified":"2026-10-02T18:22:19.974Z","reserved":null,"kevAdded":["2026-08-19T00:00:00.000Z"],"kevDue":["2026-09-02T00:00:00.000Z"]},"cvss":{"headline":{"score":9.3,"severity":"critical","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":9.3,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Pypi","score":9.3,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N","exploitability":10,"impact":7.8,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":9.3,"severity":"critical","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.09839,"percentile":0.95527,"severity":"low","asOf":"2026-10-20T00:00:00.000Z","change":{"pp":-6.570999999999999,"baselineDate":"2026-09-20T00:00:00.000Z","baselineScore":0.1641},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.09839,"percentile":0.95527}],"last30":[{"date":"2026-09-20T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.1641,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.09839,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.09839,"percentile":0.95527}]},"kev":{"state":"listed","entries":[{"source":"cisa","sourceLabel":"CISA","dateAdded":"2026-08-19T00:00:00.000Z","dueDate":"2026-09-02T00:00:00.000Z","requiredAction":"Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.","name":"MLflow Server-Side Request Forgery Vulnerability","description":"MLflow contains a server-side request forgery vulnerability that can allow attackers to reach internal or cloud metadata services and receive response_status and response_body.","notes":[{"type":"url","href":"https://github.com/mlflow/mlflow/pull/24258","label":"github.com/mlflow/mlflow/pull/24258"},{"type":"url","href":"https://github.com/mlflow/mlflow/issues/24179","label":"github.com/mlflow/mlflow/issues/24179"},{"type":"text","value":"BOD 26-04: https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk"},{"type":"text","value":"Forensics Triage Requirements: https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk"},{"type":"url","href":"https://nvd.nist.gov/vuln/detail/CVE-2026-64849","label":"nvd.nist.gov/vuln/detail/CVE-2026-64849"}],"vendor":"MLflow","product":"MLflow","ransomware":false,"ransomwareUse":"Unknown","exploitationType":null}],"listedCount":1,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":true,"entry":{"source":"cisa","sourceLabel":"CISA","dateAdded":"2026-08-19T00:00:00.000Z","dueDate":"2026-09-02T00:00:00.000Z","requiredAction":"Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.","name":"MLflow Server-Side Request Forgery Vulnerability","description":"MLflow contains a server-side request forgery vulnerability that can allow attackers to reach internal or cloud metadata services and receive response_status and response_body.","notes":[{"type":"url","href":"https://github.com/mlflow/mlflow/pull/24258","label":"github.com/mlflow/mlflow/pull/24258"},{"type":"url","href":"https://github.com/mlflow/mlflow/issues/24179","label":"github.com/mlflow/mlflow/issues/24179"},{"type":"text","value":"BOD 26-04: https://www.cisa.gov/news-events/directives/bod-26-04-prioritizing-security-updates-based-risk"},{"type":"text","value":"Forensics Triage Requirements: https://www.cisa.gov/news-events/directives/bod-26-04-implementation-guidance-prioritizing-security-updates-based-risk"},{"type":"url","href":"https://nvd.nist.gov/vuln/detail/CVE-2026-64849","label":"nvd.nist.gov/vuln/detail/CVE-2026-64849"}],"vendor":"MLflow","product":"MLflow","ransomware":false,"ransomwareUse":"Unknown","exploitationType":null}},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[{"id":"GITHUB_MLFLOW_MLFLOW","name":"Mlflow","source":"github","url":"https://github.com/mlflow/mlflow/issues/22419","maturity":"poc","reliabilityScore":0.3,"verified":false,"type":null,"platforms":[],"requiresAuth":null,"exploitdb":null,"metasploit":null}],"exploitCount":1,"weaknesses":[{"id":"CWE-918","name":"Server-Side Request Forgery (SSRF)","description":"The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.","type":"weakness","status":"Incomplete","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/918.html"}],"affected":[{"vendor":"chainguard","product":"mlflow","name":"mlflow","label":"mlflow","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/mlflow","purlType":"apk","versions":[{"text":"< 3.16.0-r0","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 3.16.0-r0","eol":null,"hubHref":null},{"vendor":"wolfi","product":"mlflow","name":"mlflow","label":"mlflow","ecosystem":"Wolfi","cpePart":null,"purl":"pkg:apk/wolfi/mlflow","purlType":"apk","versions":[{"text":"< 3.16.0-r0","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 3.16.0-r0","eol":null,"hubHref":null},{"vendor":"lfprojects","product":"mlflow","name":"mlflow","label":"mlflow","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 3.3.0, < 3.15.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 3.3.0, < 3.15.0","eol":null,"hubHref":"/vendor/lfprojects/mlflow"},{"vendor":"mlflow","product":"mlflow","name":"MLflow","label":"mlflow","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 3.3.0, < 3.15.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 3.3.0, < 3.15.0","eol":null,"hubHref":"/vendor/mlflow/mlflow"},{"vendor":"PyPI","product":"mlflow","name":"mlflow","label":"mlflow","ecosystem":"PyPI","cpePart":null,"purl":"pkg:pypi/mlflow","purlType":"pypi","versions":[{"text":"≥ 3.3.0, < 3.15.0","noFixRecorded":false,"fixedIn":null},{"text":"< 3.15.0","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 3.3.0, < 3.15.0 | < 3.15.0","eol":null,"hubHref":null}],"affectedCount":5,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/mlflow/mlflow/security/advisories/GHSA-7gwp-5pfp-969j","label":"github.com/mlflow/mlflow/security/advisories/GHSA-7gwp-5pfp-969j","hostname":"github.com","tags":["X Refsource CONFIRM","WEB","Exploit","Vendor Advisory"]},{"url":"https://github.com/mlflow/mlflow/issues/24179","label":"github.com/mlflow/mlflow/issues/24179","hostname":"github.com","tags":["X Refsource MISC","WEB","Exploit","Issue Tracking","Mitigation"]},{"url":"https://github.com/mlflow/mlflow/pull/24258","label":"github.com/mlflow/mlflow/pull/24258","hostname":"github.com","tags":["X Refsource MISC","WEB","Issue Tracking","Patch"]},{"url":"https://github.com/mlflow/mlflow/commit/ba949522477cbd5915aa55d29b0cfad7d5ddf939","label":"github.com/mlflow/mlflow/commit/ba949522477cbd5915aa55d29b0cfad7d5ddf939","hostname":"github.com","tags":["X Refsource MISC","WEB","Patch"]},{"url":"https://github.com/mlflow/mlflow/releases/tag/v3.15.0","label":"github.com/mlflow/mlflow/releases/tag/v3.15.0","hostname":"github.com","tags":["X Refsource MISC","WEB","Release Notes"]},{"url":"https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-64849","label":"www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-64849","hostname":"www.cisa.gov","tags":["Government Resource","WEB","US Government Resource"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-64849","label":"nvd.nist.gov/vuln/detail/CVE-2026-64849","hostname":"nvd.nist.gov","tags":["Advisory"]},{"url":"https://github.com/advisories/GHSA-7gwp-5pfp-969j","label":"github.com/advisories/GHSA-7gwp-5pfp-969j","hostname":"github.com","tags":["Advisory"]},{"url":"https://github.com/mlflow/mlflow","label":"github.com/mlflow/mlflow","hostname":"github.com","tags":["PACKAGE"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/mlflow/PYSEC-2026-3687.yaml","label":"github.com/pypa/advisory-database/tree/main/vulns/mlflow/PYSEC-2026-3687.yaml","hostname":"github.com","tags":["WEB"]},{"url":"https://pypi.org/project/mlflow","label":"pypi.org/project/mlflow","hostname":"pypi.org","tags":["WEB","PACKAGE"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-08-17T21:16:10.612Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"kev-added","date":"2026-08-19T00:00:00.000Z","label":"Added to CISA KEV","detail":"MLflow Server-Side Request Forgery Vulnerability","source":"cisa"},{"kind":"kev-due","date":"2026-09-02T00:00:00.000Z","label":"CISA remediation due","detail":"Apply mitigations per vendor instructions.","source":"cisa"},{"kind":"modified","date":"2026-10-02T18:22:19.974Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":85,"level":"critical","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-21T11:16:39.136Z","stale":false,"partial":false}}