CVE-2025-8406 Path Traversal in zenml-io/zenml
Attackers can exploit path traversal in ZenML's materializer to overwrite critical files, potentially leading to arbitrary command execution.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Local or same network only
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2025-8406?
CVE-2025-8406 is a medium-severity path traversal vulnerability in zenml-io/zenml, published on 5 Oct 2025. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.
Official 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.
Weakness: CWE-22
Which versions are affected by CVE-2025-8406?
3 open source packages ship an affected version, including zenml. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
zenml PyPI | From 0.81.0 | 0.84.2 |
zenml PyPI | From 0.81.0 | 0.84.2 |
zenml PyPI | From 0.81.0 | 0.84.2 |
Products include Zenml Zenml.
How do I fix CVE-2025-8406?
Upgrade zenml to 0.84.2 or later.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2025-8406 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2025-8406 exists.
Other vulnerabilities in zenml-io/zenml
Sources
Also known as GHSA-q92x-2x5g-h365, PYSEC-2026-2071.