CVE-2026-88978 Hatchet DurableTask WorkerStatus gRPC resolves caller-supplied durable-task UUIDs via ListSatisfiedEntries with no tenant_id filter
An authenticated worker can read other tenants' durable event logs by guessing UUIDs due to missing tenant filters in the gRPC status endpoint.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-88978?
CVE-2026-88978 is a medium-severity missing authorization vulnerability in hatchet-dev hatchet, published on 21 Sep 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Hatchet is a platform for orchestrating background tasks, AI agents, and durable workflows at scale. Prior to 0.106.1, the WorkerStatus gRPC polling path in pkg/repository/durable_events.go passes caller-supplied durable task, node, and branch identifiers to ListSatisfiedEntries without a tenant filter, allowing an authenticated tenant worker that knows another tenant's durable-task UUID to retrieve matching durable event-log records. The UUIDv4 requirement makes exploitation unlikely, and single-tenant deployments are unaffected in practice. This issue is fixed in version 0.106.1.
Which versions are affected by CVE-2026-88978?
3 open source packages ship an affected version, including github.com/hatchet-dev/hatchet.
| Package | Affected | Fixed in |
|---|---|---|
github.com/hatchet-dev/hatchet Go | All versions | 0.106.1 |
github.com/hatchet-dev/hatchet Go | All versions | 0.106.1 |
github.com/hatchet-dev/hatchet Go | All versions | 0.106.1 |
How do I fix CVE-2026-88978?
Upgrade github.com/hatchet-dev/hatchet to 0.106.1 or later.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2026-88978 being exploited?
There is no known exploitation of CVE-2026-88978 in the wild and no public exploit code.
Sources
Also known as GHSA-992g-9cr3-vm5x, GO-2026-6560.