Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
Unauthenticated network endpoint accepts unsigned payloads (AV:N/AC:L/PR:N/UI:N); forged events corrupt data/automations (I:H) and can exhaust billing/delivery (A:H); no data disclosure (C:N).
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
4DescriptionGitHub Advisory
Plunk is an open-source email platform built on top of AWS SES. Prior to version 0.9.0, the /webhooks/sns endpoint accepts Amazon SNS notification payloads from unauthenticated requests without verifying the SNS signature, certificate, or topic ARN, meaning anyone can forge a valid-looking webhook request. This allows an unauthenticated attacker to spoof SNS events to trigger workflow automations, unsubscribe contacts, manipulate email delivery metrics, and potentially exhaust billing credits. This issue has been patched in version 0.9.0.
AnalysisAI
Amazon SNS webhook spoofing in Plunk before 0.9.0 lets any unauthenticated remote attacker forge notifications to the /webhooks/sns endpoint because the server never validates the SNS signature, certificate, or topic ARN. Attackers can inject fake email-delivery events to trigger workflow automations, unsubscribe contacts, poison delivery metrics, and drive up AWS SES billing costs. No public exploit identified at time of analysis and EPSS is very low (0.03%), but the flaw is trivially automatable against default deployments.
Technical ContextAI
Plunk is a self-hosted, open-source transactional and marketing email platform that sits on top of AWS Simple Email Service (SES), which delivers bounce/complaint/delivery events via Amazon Simple Notification Service (SNS). SNS messages are meant to be authenticated by verifying the message signature against the X.509 certificate hosted at the SigningCertURL and confirming the TopicArn matches an expected subscription. The root cause is CWE-347 (Improper Verification of Cryptographic Signature): the /webhooks/sns handler processed inbound JSON payloads as trusted without performing any of these checks, so a client-supplied body indistinguishable from a real SNS notification was accepted. The v0.9.0 fix adds this control, evidenced by the release commit 'implement AWS SNS signature verification in SecurityService' (b79d416). The affected package is identified by CPE cpe:2.3:a:useplunk:plunk (all versions prior to 0.9.0).
RemediationAI
Vendor-released patch: upgrade Plunk to version 0.9.0 or later, which implements AWS SNS signature verification in the SecurityService (commit b79d416); see https://github.com/useplunk/plunk/releases/tag/v0.9.0 and the advisory at https://github.com/useplunk/plunk/security/advisories/GHSA-9792-w86v-gx53. If you cannot upgrade immediately, place the /webhooks/sns endpoint behind a network control that only accepts connections from AWS SNS source ranges or a trusted reverse proxy, and add signature/TopicARN validation at that proxy - with the trade-off that AWS publishes broad IP ranges so this is coarse and can break legitimate SNS delivery if misconfigured. As a further stopgap, set AWS billing alarms and SES sending caps to limit the financial blast radius of forged events, and monitor for anomalous unsubscribe or automation activity; these controls reduce impact but do not close the underlying spoofing vector, so upgrading remains the real fix.
More in Jwt Attack
View allWhy is Microsoft republishing a CVE from 2013? We are republishing CVE-2013-3900 in the Security Update Guide to update
Authentication bypass in SimpleHelp 5.5.15 and prior (plus 6.0 pre-release builds) allows remote unauthenticated attacke
Authentication bypass in Fortinet FortiOS, FortiProxy, and FortiSwitchManager allows unauthenticated remote attackers to
ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. Rated critical severity (CVS
ruby-saml provides security assertion markup language (SAML) single sign-on (SSO) for Ruby. Rated critical severity (CVS
The package jsrsasign before 10.5.25 are vulnerable to Improper Verification of Cryptographic Signature when JWS or JWT
A library injection vulnerability exists in Microsoft Teams (work or school) 24046.2813.2770.1094 for macOS. Rated criti
A library injection vulnerability exists in the WebView.app helper app of Microsoft Teams (work or school) 24046.2813.27
A library injection vulnerability exists in the com.microsoft.teams2.modulehost.app helper app of Microsoft Teams (work
The Ruby SAML library is for implementing the client side of a SAML authorization. Rated critical severity (CVSS 9.8), t
cosign is a container signing and verification utility. Rated critical severity (CVSS 9.8), this vulnerability is remote
Biscuit is an authentication and authorization token for microservices architectures. Rated critical severity (CVSS 9.8)
Same technique Information Disclosure
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-28832