Description
Business::GoCardless versions before 1.01 for Perl allow memory exhaustion by flattening legacy webhook payloads before checking their signature.

A webhook body with a top-level "payload" key is verified as a legacy webhook. To rebuild the signed string, the payload is flattened into one key and value pair per leaf, each key carrying the full path to that leaf, and the pairs are then encoded, sorted and joined. A long key holding a long array costs memory proportional to the key length times the array length.

A remote attacker can exhaust memory in the process receiving webhooks with a single request that carries no valid signature.
Published: 2026-10-30
Score: n/a
EPSS: n/a
KEV: No
Impact: Denial of Service
Action: Patch Now
AI Analysis

Impact

The vulnerability exists when Business::GoCardless flattens the entire payload of a legacy webhook into a long key before verifying its signature. This flattening consumes memory proportional to the key length and the array size, allowing an attacker to submit a single request with an oversized payload that lacks a valid signature, leading to exhaustion of the host process memory and potentially a denial of service.

Affected Systems

All releases of the Business::GoCardless Perl library for the GoCardless API before version 1.01 provided by LEEJO are affected. The flaw impacts any environment that processes incoming webhook payloads using this library.

Risk and Exploitability

An EPSS score is not available and the vulnerability is not listed in the CISA KEV catalog, but memory exhaustion is a high‑impact outcome. A remote attacker who can reach the server’s webhook endpoint can trigger the flaw by sending a single crafted request. Because the library performs signature verification only after payload flattening, no authentication barrier prevents exploitation, making the vulnerability straightforward to use for anyone with network access to the endpoint.

Generated by OpenCVE AI on October 30, 2026 at 14:27 UTC.

Remediation

Vendor Solution

Upgrade to Business-GoCardless 1.01 or later.


OpenCVE Recommended Actions

  • Upgrade the Business::GoCardless module to version 1.01 or later, which performs signature verification before payload processing.
  • Enforce strict size limits on inbound webhook payloads, rejecting requests that exceed reasonable thresholds to prevent memory exhaustion.
  • Apply request rate limiting and monitoring to detect and mitigate sudden spikes in memory usage during webhook processing.

Generated by OpenCVE AI on October 30, 2026 at 14:27 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 30 Oct 2026 13:00:00 +0000

Type Values Removed Values Added
Description Business::GoCardless versions before 1.01 for Perl allow memory exhaustion by flattening legacy webhook payloads before checking their signature. A webhook body with a top-level "payload" key is verified as a legacy webhook. To rebuild the signed string, the payload is flattened into one key and value pair per leaf, each key carrying the full path to that leaf, and the pairs are then encoded, sorted and joined. A long key holding a long array costs memory proportional to the key length times the array length. A remote attacker can exhaust memory in the process receiving webhooks with a single request that carries no valid signature.
Title Business::GoCardless versions before 1.01 for Perl allow memory exhaustion by flattening legacy webhook payloads before checking their signature
Weaknesses CWE-770
References

Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-10-30T12:56:09.479Z

Reserved: 2026-10-29T11:38:31.744Z

Link: CVE-2026-119036

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-30T13:18:32.553

Modified: 2026-10-30T13:18:32.553

Link: CVE-2026-119036

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-30T14:30:08Z

Weaknesses
  • CWE-770

    Allocation of Resources Without Limits or Throttling