Build1 publisherNot yet confirmed elsewhere2 min readPublished
Kestra's 10.0 auth bypass reaches CISA's exploited list 91 days after the fix shipped
CISA added Kestra's unauthenticated code-execution flaw CVE-2026-49869, rated 10.0, to its exploited list on 2 September, three months after the fix. Orchestrators hold their workflows' credentials, so any reachable unpatched instance needs a compromise check as well as an upgrade.
The Engineer · Build desk

What happened
- Kestra's authentication filter matched request paths by suffix, so a path ending in /configs passed the check even when it was aimed at a different endpoint.
- Once past the filter, a caller with no credentials could create a workflow and trigger it, and its shell commands would run as the Kestra process, with that process's privileges.
- Kestra shipped the fix on 2 and 3 June 2026, in versions 1.0.45 and 1.3.21.
Compiled by The EngineerSomething wrong?How this is made
Why it matters
- exposure Code running as Kestra can use stored workflow credentials to reach production data stores, cloud accounts and deployment pipelines, so a single instance matters more than the instance counts suggest.
- decision If an instance was reachable while it ran a vulnerable build, the team has to scope a possible incident before closing the ticket, and its current version number cannot settle the question.
- constraint Internet scans cannot set an upper limit on the risk, because an attacker already inside the network can reach private Kestra instances that ZoomEye never indexes.
The suffix rule meant Kestra's filter and its request handling disagreed about what a request was for [3]. A dev.to write-up that measured the flaw's exposure explains the split: the filter judged the path string, and the application then sent the request to whichever endpoint it actually addressed [3]. Suffix matching is the sort of check that passes every test its author thought to write. Nothing more is needed after that, because running shell commands is an ordinary workflow step [4]. The write-up cites the CISA entry for the 10.0 rating [2].
Ninety-one days separate the fix, available on 3 June 2026, from CISA's listing on 2 September [15]. In the write-up's account, the technical facts did not change in that interval. The evidence of exploitation did, and the listing turned a scheduled upgrade into an urgent one for anyone still behind [14]. The write-up does not say when exploitation began, and it names only the two fixed releases, not the full affected range. Without a start date, the period to examine runs back to the first day an instance was reachable on a vulnerable build [11].
The measurement section is careful with its own numbers. The ZoomEye title search found 110 more matches than the application fingerprint [16]. The fingerprint has to identify the product from service evidence, which is a stricter test than finding a string in a page title [8]. The write-up states that neither count is a count of vulnerable instances [8]. For either figure to describe one team's risk, that team's Kestra would have to face the internet [17]. According to the write-up, most deployments sit on private networks, reached by VPN or an internal address, and never show up in the scan [17].
I think a Kestra compromise check should start from the list of credentials its workflows hold. Code running as the Kestra process can use whatever the process can reach, and the instance holds the credentials its workflows use [4][10].
The write-up puts the defect in a familiar category [12]. Filters that match partial paths, ignore the HTTP method, or compare string suffixes instead of structured routes tend to expose endpoints their developers did not mean to expose [12]. Its recommendation is to express authentication decisions against the same route definitions the application uses [13].
What to watch
- A public start date for exploitation of CVE-2026-49869 would set how far back teams that patched in June have to look.
- A full affected-version range or indicators of compromise from Kestra or CISA, beyond the two fixed releases named so far.
Clarity's read
What the record supports and how the coverage leans. The claims behind it follow.
Reality
- Evidence55
- Adoption20
- Hype gap+5
- Incentives
- Insufficient
- Confidence55
Claim ledger
Ranked by verification strength, evidence, and original report placement.
- [1]
CVE-2026-49869 affects Kestra, an event-driven orchestration platform used for data, AI and infrastructure workflows.
- [2]
CVE-2026-49869 is an operating system command injection reachable without authentication, rated 10.0 in the CISA KEV entry.
- [3]
The root cause is an authentication filter that matched request paths by suffix: a path ending in /configs passed the check even when it was not addressed to the configuration endpoint.
- [4]
An unauthenticated caller could create a workflow and trigger its execution, and because Kestra workflows can run shell commands, the result is remote code execution with the privileges of the Kestra process.
- [5]
Kestra fixed the flaw in versions 1.0.45 and 1.3.21, released on 2 and 3 June 2026; the fix was available on 3 June 2026.
- [6]
CISA added the vulnerability to its Known Exploited Vulnerabilities catalog on 2 September 2026, based on evidence of exploitation.
- [7]
ZoomEye returned 124 matches for the query app="Kestra" and 234 matches for title="Kestra" at collection time.
- [8]
The application fingerprint requires ZoomEye to identify the product from service evidence, a stricter test than matching a string in a page title; neither figure is a count of vulnerable instances.
- [9]
The vulnerability requires network access to the service, not internet access; an attacker with a foothold anywhere in the network, or who has compromised a developer workstation, can reach an internal Kestra instance.
- [10]
A Kestra instance holds the credentials its workflows use; compromise of the orchestrator reaches every system those workflows touch, which can include production data stores, cloud accounts and deployment pipelines.
- [11]
An organization that patched promptly is not necessarily finished: if the service was reachable while the vulnerable version was running, the possibility of prior compromise needs to be assessed independently of the current patch state.
- [12]
Authentication filters that match on partial paths, ignore the HTTP method, or compare string suffixes rather than structured routes tend to expose endpoints the developer did not intend to expose; CVE-2026-49869 belongs to this recognizable category.
- [13]
The write-up's defensive recommendation is that authentication decisions should be expressed against the same route definitions the application uses.
- [14]
The technical facts did not change between the fix and the KEV listing; the evidence of exploitation did, and for an organization that had not patched, the KEV listing converted a scheduled maintenance item into an urgent one.
- [15]
91 days separate the fix's availability on 3 June 2026 from CISA's KEV listing on 2 September 2026.
- [16]
The ZoomEye title search returned 110 more Kestra matches than the application fingerprint.
- [17]
Kestra is commonly deployed inside a private network, reached through a VPN or an internal address; such instances do not appear in the internet measurement and are the majority of deployments in most organizations.
Sources
1 independent publisher whose own reporting we read for this story.
Topics and entities
Follow any of these and your For You feed starts watching them — no settings page required.
Topics
- Known Exploited Vulnerabilities catalogFollow
- Workflow orchestration securityFollow
- Authentication Bypass FlawsFollow
- Internet Exposure MeasurementFollow