← Back to CVE Explorer

CVE-2026-49869

Full vulnerability record from the local CVENow database.

Description

Kestra is an open-source, event-driven orchestration platform. Prior to 1.0.45 and 1.3.21, AuthenticationFilter in Kestra OSS uses request.getPath().endsWith("/configs") to whitelist the public configuration endpoint from Basic Auth. Because the check is a suffix match rather than an exact path match, any API path whose last segment is configs bypasses authentication entirely. An unauthenticated remote attacker can exploit this to create and execute arbitrary workflows without credentials. Because Kestra ships with script execution plugins (plugin-script-shell, plugin-script-python, etc.) enabled by default, this directly results in unauthenticated Remote Code Execution as root inside the Kestra worker container. This vulnerability is fixed in 1.0.45 and 1.3.21.

Severity
CRITICAL
CVSS score
10.0 (v3.1)
Vulnerability status
Analyzed
Source identifier
Published
2026-06-26 22:16:32.113000
Last modified
2026-10-25 17:10:00.197000
View original CVE JSON
{
  "id": "CVE-2026-49869",
  "sourceIdentifier": "[email protected]",
  "published": "2026-06-26T22:16:32.113",
  "lastModified": "2026-10-25T17:10:00.197",
  "vulnStatus": "Analyzed",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "Kestra is an open-source, event-driven orchestration platform. Prior to 1.0.45 and 1.3.21, AuthenticationFilter in Kestra OSS uses request.getPath().endsWith(\"/configs\") to whitelist the public configuration endpoint from Basic Auth. Because the check is a suffix match rather than an exact path match, any API path whose last segment is configs bypasses authentication entirely. An unauthenticated remote attacker can exploit this to create and execute arbitrary workflows without credentials. Because Kestra ships with script execution plugins (plugin-script-shell, plugin-script-python, etc.) enabled by default, this directly results in unauthenticated Remote Code Execution as root inside the Kestra worker container.  This vulnerability is fixed in 1.0.45 and 1.3.21."
    },
    {
      "lang": "es",
      "value": "Kestra es una plataforma de orquestación de código abierto y basada en eventos. Antes de las versiones 1.0.45 y 1.3.21, AuthenticationFilter en Kestra OSS utiliza request.getPath().endsWith(’/configs’) para incluir en la lista blanca el endpoint de configuración público de la autenticación básica. Debido a que la verificación es una coincidencia de sufijo en lugar de una coincidencia de ruta exacta, cualquier ruta de API cuyo último segmento es configs omite la autenticación por completo. Un atacante remoto no autenticado puede explotar esto para crear y ejecutar flujos de trabajo arbitrarios sin credenciales. Debido a que Kestra se distribuye con plugins de ejecución de scripts (plugin-script-shell, plugin-script-python, etc.) habilitados por defecto, esto resulta directamente en ejecución remota de código no autenticada como root dentro del contenedor de trabajador de Kestra. Esta vulnerabilidad está corregida en las versiones 1.0.45 y 1.3.21."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "kestra-io",
          "product": "kestra",
          "versions": [
            {
              "version": "< 1.0.45",
              "status": "affected"
            },
            {
              "version": ">= 1.1.0, < 1.3.21",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
          "baseScore": 10.0,
          "baseSeverity": "CRITICAL",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "NONE",
          "userInteraction": "NONE",
          "scope": "CHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 3.9,
        "impactScore": 6.0
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-09-01T00:00:00+00:00",
          "id": "CVE-2026-49869",
          "options": [
            {
              "exploitation": "active"
            },
            {
              "automatable": "yes"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "cisaExploitAdd": "2026-09-02",
  "cisaActionDue": "2026-09-05",
  "cisaRequiredAction": "Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.",
  "cisaVulnerabilityName": "Kestra OSS OS Command Injection Vulnerability",
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-78"
        },
        {
          "lang": "en",
          "value": "CWE-184"
        },
        {
          "lang": "en",
          "value": "CWE-287"
        },
        {
          "lang": "en",
          "value": "CWE-918"
        }
      ]
    }
  ],
  "configurations": [
    {
      "nodes": [
        {
          "operator": "OR",
          "negate": false,
          "cpeMatch": [
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:kestra:kestra:*:*:*:*:*:*:*:*",
              "versionEndExcluding": "1.0.45",
              "matchCriteriaId": "ADC0ED79-69EF-4A2A-9F07-4791ED97124F"
            },
            {
              "vulnerable": true,
              "criteria": "cpe:2.3:a:kestra:kestra:*:*:*:*:*:*:*:*",
              "versionStartIncluding": "1.1.0",
              "versionEndExcluding": "1.3.21",
              "matchCriteriaId": "73FD0092-9076-4F1C-9B93-E59C09D30E21"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/kestra-io/kestra/security/advisories/GHSA-5vc5-wxxq-3fjx",
      "source": "[email protected]",
      "tags": [
        "Exploit",
        "Vendor Advisory"
      ]
    },
    {
      "url": "https://github.com/kestra-io/kestra/security/advisories/GHSA-5vc5-wxxq-3fjx",
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
      "tags": [
        "Exploit",
        "Vendor Advisory"
      ]
    },
    {
      "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-49869",
      "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
      "tags": [
        "US Government Resource"
      ]
    }
  ]
}