CVE-2026-3840: Kedro Path Traversal Vulnerability – High Severity Data Access Risk
A path traversal vulnerability in Kedro 1.2.0 allows an authenticated local attacker to break out of the intended dataset directory structure by injecting specially crafted version strings. The flaw exists in how the data pipeline tool constructs file paths when versioning datasets, enabling unauthorized access to files outside the expected scope. This can be exploited both programmatically and via the command-line interface, potentially allowing attackers to read sensitive files or inject malicious data into shared environments.
Source data · NVD / CISA · public domain
- CVSS
- 3.0 · 7.1 HIGH · CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
- Weaknesses (CWE)
- CWE-22
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-06-12 / 2026-06-17
NVD description (verbatim)
A vulnerability in Kedro version 1.2.0 allows an attacker to exploit path traversal by providing a crafted version string. The `_get_versioned_path()` method in `kedro/io/core.py` directly interpolates user-supplied version strings into filesystem paths without sanitization. This enables an attacker to escape the intended versioned dataset directory and access files outside the expected path. The issue is also reachable through the CLI via the `--load-versions` parameter, as `_split_load_versions()` in `kedro/framework/cli/utils.py` does not validate the version string. This vulnerability can lead to unauthorized file reads, data poisoning, cross-project or cross-tenant data access, and broader downstream impacts in environments where Kedro is used with automation or orchestration layers.
2 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The vulnerability resides in the `_get_versioned_path()` method within `kedro/io/core.py`, which concatenates user-supplied version strings directly into filesystem paths without sanitization. An attacker can leverage path traversal sequences (such as `../`) within the version parameter to escape the versioned dataset directory. The same issue is exposed via CLI through the `--load-versions` parameter, which is processed by `_split_load_versions()` in `kedro/framework/cli/utils.py` without validation. This combination of insufficient input validation and unsafe path construction creates a CWE-22 path traversal condition accessible to local users with execution privileges.
Business impact
In production Kedro deployments, this vulnerability can enable data exfiltration across project or tenant boundaries, compromising confidentiality. An insider or compromised service account could poison datasets belonging to other projects or read proprietary data, particularly damaging in multi-tenant environments or shared automation platforms. Where Kedro pipelines feed into downstream systems (BI tools, ML models, data warehouses), corrupted or unauthorized data access could degrade decision-making quality or introduce compliance violations. Severity is moderated by the requirement for local execution context and existing privileges.
Affected systems
Kedro version 1.2.0 is confirmed vulnerable. Organizations running this version in data engineering or MLOps environments should inventory deployments, especially those integrated with orchestration layers (Airflow, Kubernetes, etc.) or serving multi-tenant use cases. If your Kedro installation is accessed only by fully trusted operators in isolated environments with strict access controls, immediate risk is lower; in shared or automation-heavy contexts, this is a priority.
Exploitability
Exploitation requires local code execution and some level of user privilege (indicated by the PR:L component), making this less trivially exploitable than a remote vector. However, the lack of complexity requirements and the availability of two attack surfaces—programmatic API and CLI—mean that once an attacker gains a foothold, the barrier to abuse is low. Automated pipelines, CI/CD integration, or container orchestration may inadvertently lower this barrier if Kedro runs with elevated privileges or broad filesystem access.
Remediation
Upgrade Kedro beyond version 1.2.0 to a patched release that implements input validation and path sanitization in both `_get_versioned_path()` and `_split_load_versions()`. Verify against the vendor advisory for the specific version that addresses this issue. In the interim, restrict execution of Kedro pipelines to principle-of-least-privilege service accounts, disable or audit use of the `--load-versions` CLI parameter, and enforce filesystem-level access controls to limit which directories Kedro processes can read or write.
Patch guidance
Check the Linux Foundation Kedro project repository and release notes for versions published after June 2026 that address CVE-2026-3840. Apply the patched version to all development, staging, and production Kedro installations. Test the upgrade in a non-production environment to ensure pipeline compatibility, as input validation logic may affect existing workflows that rely on unquoted or special-character-laden version strings. Document any necessary adjustments to automated deployment configurations.
Detection guidance
Monitor Kedro execution for suspicious `--load-versions` parameters containing `../`, `..\`, or absolute paths. Audit filesystem access logs for Kedro processes attempting to read or write files outside their intended dataset directories. Review Kedro logs and application traces for path construction anomalies. In containerized deployments, enforce seccomp or AppArmor profiles to restrict file access scope. Implement network-based monitoring for data exfiltration or unusual data access patterns if Kedro connects to remote storage backends.
Why prioritize this
This vulnerability scores 7.1 (HIGH) due to the combination of high confidentiality and integrity impact in a local privilege context. While not remotely exploitable and not yet in the KEV catalog, the risk is significant for organizations where Kedro handles sensitive data in automated or multi-user environments. It should be prioritized ahead of lower-scoring issues, especially if your infrastructure relies on Kedro for data pipeline orchestration in regulated or competitive sectors.
Risk score, explained
CVSS 3.0 score of 7.1 reflects high impact (C:H, I:H) against confidentiality and integrity, offset by local attack vector (AV:L) and low privilege requirement (PR:L). The attack is not complex (AC:L) and does not require user interaction (UI:N), making it practical to exploit once a foothold is established. The scope is unchanged (S:U), limiting blast radius to the affected system's data. The score does not account for business context, automation amplification, or multi-tenant scenarios where risk may be perceived as higher.
Frequently asked questions
Can this vulnerability be exploited remotely?
No. The vulnerability requires local code execution (AV:L) and some level of user privilege (PR:L). It cannot be exploited over a network by an unauthenticated attacker. However, if Kedro runs in a container, CI/CD pipeline, or shared execution environment accessible to external actors through other means, the local barrier may be lower in practice.
Are all Kedro versions affected?
Only version 1.2.0 is confirmed vulnerable in the provided data. Earlier and later versions may differ; consult the vendor advisory to determine which versions require patching. Do not assume all Kedro instances are vulnerable without confirming your specific deployment version.
What is the difference between reading files and data poisoning as impacts?
Unauthorized file reads allow an attacker to steal sensitive data outside their assigned scope. Data poisoning occurs when the attacker writes crafted data into files or datasets they should not access, potentially corrupting downstream processes, models, or business logic that depend on those files. Both are possible with this vulnerability due to the combined I:H and C:H impact.
Should I immediately take Kedro offline?
If your Kedro deployment is in a high-trust environment with strict access controls and handles non-sensitive data, an immediate shutdown may not be operationally necessary. However, you should prioritize patching within your next maintenance window and apply interim mitigations (least privilege, filesystem restrictions) immediately. If you operate multi-tenant infrastructure or process highly sensitive data, expedited patching or temporary restrictions are warranted.
This analysis is based on publicly available vulnerability data as of June 2026 and the structured source information provided. Patch version numbers and specific remediation steps should be verified against the Linux Foundation Kedro project advisory before implementation. SEC.co does not provide legal, compliance, or business continuity advice; consult your security and legal teams to assess risk within your organizational context. No exploit code or weaponized proof-of-concept is provided or recommended. Always test patches in non-production environments before broad deployment. Source: NVD (public-domain), retrieved 2026-07-20. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2016-20076HIGHWordPress Simple-Backup 2.7.11 Unauthenticated File Access & Deletion Vulnerability
- CVE-2016-20081HIGHHB Audio Gallery Lite Path Traversal Vulnerability – Unauthenticated File Download
- CVE-2017-20248HIGHApptha Slider Gallery Path Traversal Vulnerability
- CVE-2017-20250HIGHMac Photo Gallery 3.0 Path Traversal File Download Vulnerability
- CVE-2018-25408HIGHOpen ISES Project Path Traversal Vulnerability (High Severity)
- CVE-2024-40646HIGHVertex Path Traversal Vulnerability – Remote File Access Risk
- CVE-2026-0270HIGHCortex XSOAR Path Traversal on Linux — Exploit Requirements & Patching Guide
- CVE-2026-10108HIGHUnauthenticated Path Traversal in xiaomusic v0.5.7 – File Read Vulnerability