{"answers":{"affected":"4 open source packages ship an affected version, including mlflow. It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-3848 exists.","fix":"Upgrade mlflow to 2.12.1 or later.","what":"CVE-2024-3848 is a high-severity path traversal vulnerability in Lfprojects Mlflow, published on 16 May 2024. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2024-3848 and fix it if it is affected.\n\nWhat it is: CVE-2024-3848 is a high-severity path traversal vulnerability in Lfprojects Mlflow, published on 16 May 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-3848 exists.\n\nAffected packages and fixed versions:\n- mlflow (Bitnami): affected all versions; fixed in 2.12.1\n- mlflow (PyPI): affected all versions; fixed in 2.12.1\n- mlflow (PyPI): affected from 2.9.2; fixed in 2.12.1\n- mlflow (PyPI): affected from 2.9.2; fixed in 2.12.1\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2024-3848/ (Markdown: https://insights.sbomify.com/CVE-2024-3848/index.md)","id":"CVE-2024-3848","markdown":"https://insights.sbomify.com/CVE-2024-3848/index.md","name":"CVE-2024-3848","record":{"aliases":["BIT-mlflow-2024-3848","GHSA-rfqq-wq6w-72jm","PYSEC-2024-244"],"analysis":{"component_type":"library","fix_type":"patch","impacts":["data_read"],"network_reachable":"yes","non_default_config":false,"product_category":"MLflow library","requires_auth":"none","summary":"Attackers can read arbitrary files, including sensitive keys, by exploiting a path traversal bypass in MLflow's artifact URL handling.","user_interaction":"not_required","vuln_class":"path_traversal"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"@huntr_ai","cpe":[{"product":"mlflow","vendor":"lfprojects"}],"cvss":{"score":7.5,"severity":"high","source":"cna","vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","version":"3.0"},"cwes":[{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory"},{"id":"CWE-29","name":"Path Traversal: '\\..\\filename'"}],"description":"A path traversal vulnerability exists in mlflow/mlflow version 2.11.0, identified as a bypass for the previously addressed CVE-2023-6909. The vulnerability arises from the application's handling of artifact URLs, where a '#' character can be used to insert a path into the fragment, effectively skipping validation. This allows an attacker to construct a URL that, when processed, ignores the protocol scheme and uses the provided path for filesystem access. As a result, an attacker can read arbitrary files, including sensitive information such as SSH and cloud keys, by exploiting the way the application converts the URL into a filesystem path. The issue stems from insufficient validation of the fragment portion of the URL, leading to arbitrary file read through path traversal.","ecosystems":["Bitnami","PyPI"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":1,"refs":[{"date":null,"kind":"nuclei","ref":"http/cves/2024/CVE-2024-3848.yaml","stars":null,"title":"Mlflow \u003c 2.11.0 - Path Traversal"}],"tier":"weaponised"},"has_fix":true,"headline":"Path Traversal Bypass in mlflow/mlflow","id":"CVE-2024-3848","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"Bitnami","product":"lfprojects:mlflow","products":["lfprojects:mlflow"],"type":"path_traversal","year":"2024"},"n_packages":4,"n_references":2,"next":{"headline":"Click to Chat – HoliThemes \u003c= 3.35 - Authenticated (Contributor+) Local File Inclusion","id":"CVE-2024-3849"},"packages":[{"ecosystem":"Bitnami","fixed":["2.12.1"],"introduced":["0"],"last_affected":[],"package":"mlflow","purl":"pkg:bitnami/mlflow","source":"BIT-mlflow-2024-3848"},{"ecosystem":"PyPI","fixed":["2.12.1"],"introduced":["0"],"last_affected":[],"package":"mlflow","purl":"pkg:pypi/mlflow","source":"PYSEC-2024-244"},{"ecosystem":"PyPI","fixed":["2.12.1"],"introduced":["2.9.2"],"last_affected":[],"package":"mlflow","purl":null,"source":"GHSA-rfqq-wq6w-72jm"},{"ecosystem":"PyPI","fixed":["2.12.1"],"introduced":["2.9.2"],"last_affected":[],"package":"mlflow","purl":"pkg:pypi/mlflow","source":"GHSA-rfqq-wq6w-72jm"}],"prev":{"headline":"Security feature bypass in Chrome","id":"CVE-2024-3847"},"products":["mlflow/mlflow"],"published":"2024-05-16","related":[{"cvss_score":9.3,"headline":"MLflow Server-Side Request Forgery","id":"CVE-2026-64849","kev_date_added":"2026-08-19","published":"2026-08-17"},{"cvss_score":10,"headline":"Command Injection in mlflow/mlflow","id":"CVE-2025-15379","kev_date_added":null,"published":"2026-03-30"},{"cvss_score":10,"headline":"Remote Code Execution due to Full Controlled File Write in mlflow/mlflow","id":"CVE-2024-0520","kev_date_added":null,"published":"2024-06-06"},{"cvss_score":10,"headline":"Path Traversal: '\\..\\filename'","id":"CVE-2023-6977","kev_date_added":null,"published":"2023-12-20"},{"cvss_score":10,"headline":"Improper Neutralization of Special Elements Used in a Template Engine in mlflow/mlflow","id":"CVE-2023-6709","kev_date_added":null,"published":"2023-12-12"},{"cvss_score":10,"headline":"MLflow Arbitrary File Upload","id":"CVE-2023-6015","kev_date_added":null,"published":"2023-11-16"},{"cvss_score":10,"headline":"MLflow Arbitrary File Write","id":"CVE-2023-6018","kev_date_added":null,"published":"2023-11-16"}],"sources":[{"class":"attribution","licence":"Apache-2.0","name":"Bitnami","prefix":"BIT"},{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CC BY 4.0","name":"PyPA Advisory Database","prefix":"PYSEC"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"},{"class":"attribution","licence":"MIT","name":"Nuclei templates"}],"ssvc":{"automatable":"yes","exploitation":"poc","technical_impact":"partial"},"state":"PUBLISHED","updated":"2024-08-01","vendors":["mlflow"]},"summary":"Attackers can read arbitrary files, including sensitive keys, by exploiting a path traversal bypass in MLflow's artifact URL handling.","url":"https://insights.sbomify.com/CVE-2024-3848/"}