GHSA-fjwv-jf2v-j499: SSRF

Published Sep 22, 2026
·
Updated

Summary The SNS UnsubscribeConfirmation handler in internal/integrations/ingestors/sns/sns.go makes an unvalidated http.Get() call to payload.UnsubscribeURL without any URL restriction. Because UnsubscribeURL is intentionally excluded from the BuildSignature() signed field list, an attacker can replace this field in a legitimately AWS-signed message with an arbitrary internal URL, bypassing the VerifyPayload() signature check entirely and triggering a Server-Side Request Forgery (SSRF) against internal infrastructure — including the EC2 Instance Metadata Service (IMDS) at 169.254.169.254.

### Impact

This is a Server-Side Request Forgery (SSRF) vulnerability. An attacker with a Hatchet account and an AWS Free Tier account can:

- Reach the EC2 IMDS endpoint and retrieve IAM temporary credentials if Hatchet is deployed on AWS - Port-scan and probe internal services not exposed to the internet - Access internal HTTP APIs (e.g., Kubernetes API server, internal dashboards) from the Hatchet server's network context

Affected Software

1 affected componentFixes available
go/hatchet-dev/hatchet<0.91.1
0.91.1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade go/hatchet-dev/hatchet to a version that resolves this vulnerability.

    Fixed in 0.91.1

Event History

Sep 22, 2026
Advisory Published
via GitHub·08:34 PM
Data Sourced
via GitHub·08:34 PM
DescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

Who can exploit this issue?

An attacker needs a Hatchet account and an AWS account capable of producing a legitimately AWS-signed SNS message. They can alter the unsigned UnsubscribeURL field after signing, so signature verification does not prevent the malicious URL from being requested.

2

Which deployments are most exposed?

Hatchet deployments running on AWS are particularly exposed because the server-side request can target the EC2 Instance Metadata Service at 169.254.169.254 and potentially retrieve temporary IAM credentials. Any deployment where the Hatchet server can reach internal HTTP services may also be used to probe or access those services.

3

What can an attacker access through the SSRF?

The attacker can cause the Hatchet server to make HTTP requests from its own network context. This can be used to probe internal ports and services or reach internal HTTP APIs such as a Kubernetes API server or internal dashboards.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203