CVE-2024-2928: lfprojects mlflow Path Traversal: '\..\filename'
Vulnerability summary
CVE-2024-2928 is a high (CVSS 7.5) Path Traversal: '\..\filename' vulnerability in lfprojects mlflow. EPSS estimates a 21.85% chance of exploitation in the next 30 days, higher than 97.6% of scored vulnerabilities. 1 public exploit is recorded.
Timeline
- 06-06-2024PublishedVulnerability first disclosed.
- 01-08-2024Last modifiedVulnerability information updated.
Description
A Local File Inclusion (LFI) vulnerability was identified in mlflow/mlflow, specifically in version 2.9.2, which was fixed in version 2.11.3. This vulnerability arises from the application's failure to properly validate URI fragments for directory traversal sequences such as '../'. An attacker can exploit this flaw by manipulating the fragment part of the URI to read arbitrary files on the local file system, including sensitive files like '/etc/passwd'. The vulnerability is a bypass to a previous patch that only addressed similar manipulation within the URI's query string, highlighting the need for comprehensive validation of all parts of a URI to prevent LFI attacks.
CVSS metrics
4 scores · 3 sources · 2 versions- NVDNIST7.5HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- NVDNIST7.5HighCVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
EPSS trend
Probability
21.85%
Chance of exploitation in the next 30 days
Percentile
98%
Versus all other CVEs
30-day change
0.00 pp
From 21.85% on 19-09-2026
Known exploited
Compare KEV catalogsNot in any of the 3 tracked catalogs.
Public exploits
1 foundExploit Reference (huntr.com)
Maturity: unknown
Weaknesses
CWE · root cause- CWE-29Path Traversal: '\..\filename'The product uses external input to construct a pathname that should be within a restricted directory, but it does not properly neutralize '\..\filename' (leading backslash dot dot) sequences that can resolve to a location that is outside of that directory.
- CWE-22Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
Affected systems
Lfprojects1 product
- mlflow< 2.11.3
Mlflow1 product
- mlflow/mlflow≥ unspecified, < 2.11.3
PyPI1 product
- mlflow< 96f0b573a73d8eedd6735a2ce26e08859527be07 | < 2.11.3
3 vendors · 3 products
References
6 links- huntr.com/bounties/19bf02d7-6393-4a95-b9d0-d6d4d2d8c298WEBEVIDENCEFIXREPORTExploitIssue TrackingPatchThird Party Advisory
- github.com/mlflow/mlflowPACKAGE