Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-48129

CVE-2026-48129: Kestra Path Traversal Vulnerability

CVE-2026-48129 is a path traversal vulnerability in Kestra that allows attackers to create or overwrite files outside the task directory. This article covers technical details, affected versions, and patches.

Published:

CVE-2026-48129 Overview

CVE-2026-48129 is a path traversal vulnerability [CWE-22] affecting Kestra, an open-source event-driven orchestration platform. The flaw resides in the handling of task inputFiles, where rendered file names are written directly under the task working directory without sanitization. When a flow forwards untrusted execution input or webhook data into an inputFiles file name, an attacker can inject ../ path segments. This allows creation or overwrite of arbitrary files outside the task working directory on the worker filesystem. The maintainers patched the issue in Kestra versions 1.3.19, 1.2.19, 1.1.19, and 1.0.43.

Critical Impact

Attackers can overwrite arbitrary files on Kestra worker hosts by injecting path traversal sequences into untrusted webhook or execution data consumed by inputFiles.

Affected Products

  • Kestra versions prior to 1.0.43
  • Kestra versions prior to 1.1.19 and 1.2.19
  • Kestra versions prior to 1.3.19

Discovery Timeline

  • 2026-06-19 - CVE-2026-48129 published to NVD
  • 2026-06-23 - Last updated in NVD database

Technical Details for CVE-2026-48129

Vulnerability Analysis

Kestra flows can declare an inputFiles map that materializes files into the task working directory before execution. The platform renders file name keys using its template engine, then writes the resulting file under the worker's task directory. The renderer permits values sourced from execution inputs, triggers, and webhook payloads without validating the resolved path. When a flow author forwards such untrusted data into an inputFiles key, the attacker controls part of the destination path. By supplying ../ sequences, the writer resolves to a location outside the intended working directory.

Root Cause

The root cause is missing path containment validation on rendered inputFiles keys. Kestra does not canonicalize the resolved file path and verify that it remains within the task working directory before opening the file for write. This is a classic CWE-22 improper limitation of a pathname to a restricted directory.

Attack Vector

Exploitation requires a Kestra flow that maps untrusted input into an inputFiles file name. An attacker triggers the flow through an exposed webhook or execution API endpoint and supplies a value containing ../ segments. The worker then writes the file content to the attacker-chosen path with the privileges of the Kestra worker process. Successful exploitation can overwrite configuration files, scripts executed later in the pipeline, or shared artifacts, leading to integrity loss and potential downstream code execution. See the Kestra GHSA-q3fw-mvgv-pjr2 Security Advisory for technical details.

Detection Methods for CVE-2026-48129

Indicators of Compromise

  • File writes by the Kestra worker process to paths outside the configured task working directory root.
  • Webhook or execution payloads containing ../ sequences in fields bound to inputFiles keys.
  • Unexpected modifications to flow definitions, plugin binaries, or shared configuration files on worker hosts.

Detection Strategies

  • Audit flow definitions for inputFiles entries whose keys are rendered from {{ trigger.body }}, {{ inputs.* }}, or other externally controlled variables.
  • Enable filesystem auditing on Kestra worker hosts and alert on writes outside /tmp/kestra-wd/ or the configured working directory root.
  • Inspect Kestra execution logs for rendered file name values containing .. or absolute path prefixes.

Monitoring Recommendations

  • Forward Kestra worker filesystem events and application logs to a centralized log platform for correlation.
  • Monitor webhook endpoints for anomalous payload structures targeting inputFiles-bound fields.
  • Track the running Kestra version across the fleet and alert when worker nodes report versions older than the patched releases.

How to Mitigate CVE-2026-48129

Immediate Actions Required

  • Upgrade Kestra to 1.3.19, 1.2.19, 1.1.19, or 1.0.43 depending on the deployed release branch.
  • Review all flows that consume webhook or execution data and remove direct bindings into inputFiles keys.
  • Restrict network exposure of Kestra webhook and execution endpoints to trusted callers.

Patch Information

Kestra maintainers released fixes in versions 1.3.19, 1.2.19, 1.1.19, and 1.0.43. Patched releases enforce containment of rendered inputFiles paths within the task working directory. Refer to the Kestra GHSA-q3fw-mvgv-pjr2 Security Advisory for upgrade guidance.

Workarounds

  • Sanitize untrusted input before binding it to inputFiles keys, rejecting values containing .. or path separators.
  • Use static file names in inputFiles and pass dynamic data through file contents rather than file names.
  • Run Kestra workers under least-privilege service accounts with restrictive filesystem permissions on sensitive directories.

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.