CVE-2026-84298: Hatchet: Cross-tenant durable callback payload disclosure in Hatchet V1 Dispatcher
Hatchet is a platform for orchestrating background tasks, AI agents, and durable workflows at scale. Prior to 0.95.3, the V1 DurableTask stream handler stores worker-supplied taskexternalid values in the durableInvocations routing map before tenant ownership is verified, and callback delivery resolves that map by task UUID without tenant identity. An authenticated tenant worker that knows another tenant's durable task UUID and keeps a stream open on the same dispatcher process can receive that task's durable callback result payload. UUIDv4 values are not enumerable, and single-tenant deployments are unaffected in practice. This issue is fixed in version 0.95.3.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Hatchet V1 Dispatcherto a version that resolves this vulnerability.Fixed in 0.95.3
Event History
Frequently Asked Questions
Which deployments are realistically exposed?
Multi-tenant Hatchet deployments using versions before 0.95.3 are affected in practice. Single-tenant deployments are unaffected in practice.
What does an attacker need to exploit this issue?
The attacker needs authenticated access as a tenant worker, knowledge of another tenant's durable task UUID, and the ability to keep a stream open on the same dispatcher process. UUIDv4 task identifiers are not enumerable, which increases exploitation difficulty.
What data could be disclosed?
An attacker can receive the durable callback result payload for another tenant's durable task. The provided information does not indicate integrity or availability impact.
How can the issue be remediated?
Upgrade Hatchet to version 0.95.3, which fixes the issue.