Description
Hatchet is a platform for orchestrating background tasks, AI agents, and durable workflows at scale. Prior to 0.91.1, the SNS UnsubscribeConfirmation handler in internal/integrations/ingestors/sns/sns.go calls http.Get() on payload.UnsubscribeURL after VerifyPayload() even though BuildSignature() excludes UnsubscribeURL, allowing an authenticated Hatchet tenant to replace that field in an otherwise valid AWS-signed message with an internal URL. The server-side request can reach EC2 Instance Metadata Service, internal services, and internal HTTP APIs, potentially exposing IAM credentials or network-accessible data and functionality. This issue is fixed in version 0.91.1.
Published: 2026-09-21
Score: 4.1 Medium
EPSS: n/a
KEV: No
Impact: Server-side request forgery (SSRF)
Action: Patch
AI Analysis

Impact

Hatchet's SNS UnsubscribeConfirmation handler allows an authenticated tenant to supply an arbitrary UnsubscribeURL after verifying the message payload even though the message signature does not cover that field. By replacing the URL with an internal address, the server performs a GET request to that location, creating a server‑side request forgery path that can reach internal services such as the EC2 Instance Metadata Service, other internal HTTP APIs, or any resource reachable from the Hatchet host. This can expose IAM credentials, internal data, and enable further internal actions. The attack requires control of a tenant that can send signed SNS messages to Hatchet but does not need elevated privileges beyond that tenant scope. The failure is a classic SSRF vulnerability identified as CWE‑918. The impact is the potential exfiltration of internal data and unintended interaction with internal services, although it does not directly grant higher system privileges.

Affected Systems

The vulnerability exists in the Hatchet platform developed by hatchet‑dev. Versions earlier than 0.91.1 are affected. Any deployment of Hatchet that relies on the internal SNS ingestion module before the 0.91.1 update is at risk. The fix is incorporated in 0.91.1 and later releases, removing the use of UnsubscribeURL in HTTP requests after payload verification.

Risk and Exploitability

The CVSS score of 4.1 indicates low to moderate impact. Exploit probability is not documented, and the vulnerability is not listed in CISA's Known Exploited Vulnerabilities catalog, suggesting no publicly observed exploitation yet. However, because only authenticated tenants can trigger the SSRF and the target is internal network resources, the risk to customers is significant for environments where the service has unrestricted outbound connectivity. The attacker can read instance metadata, access internal APIs, and potentially influence internal state within the tenant's scope. While the vulnerability does not automatically lead to tenant‑level privilege escalation, it can serve as a foothold for lateral movement if other weaknesses exist.

Generated by OpenCVE AI on September 21, 2026 at 17:24 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Hatchet to version 0.91.1 or later, which removes the use of UnsubscribeURL in HTTP requests after payload verification.
  • Ensure that only legitimate AWS SNS messages are processed and that VerifyPayload and signature validation exclude the UnsubscribeURL field before any outbound request is made.
  • Restrict outbound network connections from the Hatchet service to only necessary endpoints, for example by blocking access to the EC2 Instance Metadata Service and internal APIs, to mitigate potential SSRF if other vulnerabilities exist.
  • Monitor Hatchet logs for unexpected outbound connections to internal services and investigate any anomalies promptly.

Generated by OpenCVE AI on September 21, 2026 at 17:24 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 21 Sep 2026 17:45:00 +0000

Type Values Removed Values Added
First Time appeared Hatchet-dev
Hatchet-dev hatchet
Vendors & Products Hatchet-dev
Hatchet-dev hatchet

Mon, 21 Sep 2026 16:00:00 +0000

Type Values Removed Values Added
Description Hatchet is a platform for orchestrating background tasks, AI agents, and durable workflows at scale. Prior to 0.91.1, the SNS UnsubscribeConfirmation handler in internal/integrations/ingestors/sns/sns.go calls http.Get() on payload.UnsubscribeURL after VerifyPayload() even though BuildSignature() excludes UnsubscribeURL, allowing an authenticated Hatchet tenant to replace that field in an otherwise valid AWS-signed message with an internal URL. The server-side request can reach EC2 Instance Metadata Service, internal services, and internal HTTP APIs, potentially exposing IAM credentials or network-accessible data and functionality. This issue is fixed in version 0.91.1.
Title Hatchet: SSRF via Unsigned UnsubscribeURL in SNS UnsubscribeConfirmation Handler
Weaknesses CWE-918
References
Metrics cvssV3_1

{'score': 4.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:L/I:N/A:N'}


Subscriptions

Hatchet-dev Hatchet
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-21T15:42:21.803Z

Reserved: 2026-07-10T18:36:58.848Z

Link: CVE-2026-61681

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-21T16:17:09.823

Modified: 2026-09-21T16:17:09.823

Link: CVE-2026-61681

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-09-21T17:30:18Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)