Business::GoCardless for Perl accepts forged webhooks with empty secrets
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA. Impact type from CWE-347.
Summary
Business::GoCardless for Perl, versions before 1.01, accepts forged webhooks when a configured webhook secret is undef or empty. The signature_valid function uses each configured secret as the HMAC key and does not reject undef or empty values, which Digest::SHA treats as an empty key. A remote attacker can sign a forged webhook with an empty key and have it accepted as sent by GoCardless. CWE-347 covers this improper verification of cryptographic signatures.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
Business::GoCardless versions before 1.01 for Perl accept forged webhooks when a configured webhook secret is undef or empty. signature_valid uses each configured secret as the HMAC key, and nothing rejects undef or an empty string, both of which Digest::SHA treats as an empty key. A secret read from an unset environment variable, or an empty entry in a list of rotated secrets, is used as is. A remote attacker can sign a forged webhook with an empty key and have it accepted as sent by GoCardless.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | Business-GoCardless | before 1.01 | 1.01 | Patch available | CNA |
- Business-GoCardless Vendor— Affected before 1.01 Fixed in 1.01 Patch available CNA
Remediation
Upgrade Business-GoCardless to version 1.01 or later, which fixes the issue.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA Business-GoCardless Fixed in 1.01
Timeline
- 2026-10-30 Threatist record created from CVE-2026-119037
- 2026-10-30 Alias added: GHSA-25v3-44x4-vgq4
- 2026-11-06 CVSS score added · CISA ADP
- 2026-11-06 CISA SSVC decision points changed
References
Sources
- CVE-2026-119037 · CVE Program
- CVE-2026-119037 · NVD
- FIRST EPSS
- GHSA-25v3-44x4-vgq4 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences