{"id":"CVE-2025-8406","aliases":["EUVD-2025-32094","GHSA-q92x-2x5g-h365","PYSEC-2026-2071"],"status":"published","title":"Path Traversal in zenml-io/zenml","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","severity":{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.00365,"percentile":0.30655,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-22"],"published":"2025-10-05T09:00:36Z","modified":"2026-10-28T02:31:03Z","fixes":[{"ecosystem":"PyPI","package":"zenml","fixed_in":["0.84.2"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"zenml","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.81.0"},{"fixed":"0.84.2"}]}]},{"source":"osv","ecosystem":"PyPI","package":"zenml","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.81.0"},{"fixed":"0.84.2"}]}],"versions":["0.81.0","0.82.0","0.82.1","0.83.0","0.83.1","0.84.0","0.84.1"]},{"source":"osv","ecosystem":"PyPI","package":"zenml","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.81.0"},{"fixed":"0.84.2"}]}],"versions":["0.81.0","0.82.0","0.82.1","0.83.0","0.83.1","0.84.0","0.84.1"]}],"products":[{"vendor":"zenml","product":"zenml"},{"vendor":"zenml-io","product":"zenml-io/zenml"}],"references":[{"url":"https://huntr.com/bounties/a0880d64-9928-45bf-9663-2cd81582d9e7","tags":["exploit","Exploit","Third Party Advisory","web"]},{"url":"https://github.com/zenml-io/zenml/commit/5d22a48d7bf6c7f10b748577c2be79cc7969d398","tags":["Patch","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-8406","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-q92x-2x5g-h365","tags":["advisory"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/8xxx/CVE-2025-8406.json","tags":["advisory"]},{"url":"https://github.com/zenml-io/zenml","tags":["package"]},{"url":"https://pypi.org/project/zenml","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2025-8406","title":"Path Traversal in zenml-io/zenml","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2025-10-05T09:00:36.838Z","modified":"2025-10-06T14:16:06.622Z","cvss":[{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium","assessor":"cna"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:32:38.025852Z"}],"euvd":[{"id":"EUVD-2025-32094","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2025-10-05T09:00:36Z","modified":"2025-10-06T14:16:06Z","cvss":[{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium"}],"updated_at":"2026-11-02T20:31:36.284733Z"}],"ghsa":[{"id":"GHSA-q92x-2x5g-h365","title":"ZenML is vulnerable to Path Traversal through its `PathMaterializer` class","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2025-10-05T09:30:19Z","modified":"2025-10-07T13:07:54Z","cvss":[{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:38:59.83883Z"}],"nvd":[{"id":"CVE-2025-8406","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2025-10-05T09:15:31.767Z","modified":"2026-10-19T16:10:00.26Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium","assessor":"secondary"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T14:11:35.93863Z"}],"osv":[{"id":"CVE-2025-8406","title":"Path Traversal in zenml-io/zenml","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2025-10-05T09:00:36.838Z","modified":"2026-10-28T02:31:03.205039408Z","cvss":[{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:44:53.185592Z"},{"id":"GHSA-q92x-2x5g-h365","title":"ZenML is vulnerable to Path Traversal through its `PathMaterializer` class","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2025-10-05T09:30:19Z","modified":"2026-07-07T17:57:32.714624077Z","cvss":[{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium"}],"cwes":["CWE-22"],"updated_at":"2026-11-02T15:46:54.40888Z"},{"id":"PYSEC-2026-2071","title":"ZenML is vulnerable to Path Traversal through its `PathMaterializer` class","description":"ZenML version 0.83.1 is affected by a path traversal vulnerability in the `PathMaterializer` class. The `load` function uses `is_path_within_directory` to validate files during `data.tar.gz` extraction, which fails to effectively detect symbolic and hard links. This vulnerability can lead to arbitrary file writes, potentially resulting in arbitrary command execution if critical files are overwritten.","status":"published","published":"2026-07-07T16:03:06.450033Z","modified":"2026-07-07T17:48:17.160627575Z","cvss":[{"version":"3.0","score":6.3,"vector":"CVSS:3.0/AV:L/AC:H/PR:H/UI:R/S:U/C:H/I:H/A:H","level":"medium"}],"updated_at":"2026-11-02T15:52:55.537808Z"}]}}
