CVE-2026-47736

Puma PROXY Protocol v1 Parser Allows Remote Memory Exhaustion

Published Jul 14, 2026 CVSS 3.1 · 7.5 High EPSS < 1% KEV · Not listed
Description
Puma is a Ruby/Rack web server built for parallelism. From 5.5.0 until 7.2.1 and 8.0.2, when PROXY protocol v1 support is enabled, Puma reads incoming bytes into an internal buffer while waiting for CRLF to determine whether a PROXY v1 line is present, allowing an attacker that continuously sends bytes without CRLF to cause unbounded in-process memory growth and additional CPU cost from repeatedly scanning the growing buffer. This issue is fixed in versions 7.2.1 and 8.0.2.

Analysis

AI-generated

Technical impact

In the Puma Ruby/Rack web server, enabling PROXY Protocol v1 causes the parser to accumulate incoming data into an internal buffer while it searches for a CRLF that indicates the presence of a PROXY v1 line. If an attacker continuously sends bytes without sending the CRLF terminator, the buffer grows unchecked, forcing the server to repeatedly scan a larger buffer, consuming in‑process memory and CPU until eventual exhaustion, which can interrupt normal operation. This unbounded memory allocation (CWE‑400) results in denial of service.

Affected Systems

The flaw affects Puma versions 5.5.0 through 7.2.0 and earlier 8.x releases up to 8.0.1, when PROXY Protocol v1 is enabled. The issue is resolved in Puma 7.2.1 and 8.0.2.

Risk and Exploitability

The CVSS score of 7.5 indicates a high severity denial‑of‑service risk, while the EPSS score of less than 1% suggests a low probability of exploitation at present. The issue is not listed in the CISA KEV catalog, meaning no widespread, publicly known exploits exist yet. An attacker would need network access to a Puma instance with PROXY Protocol v1 processing enabled and would send data lacking CRLF terminators to trigger the exploit. Although the likelihood of exploitation is low, the potential impact on availability warrants a rapid response.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Puma to version 7.2.1 or later, or to version 8.0.2 or later, to apply the patch that limits buffer growth when parsing PROXY protocol v1
  • Disable PROXY Protocol v1 support in the Puma configuration until an upgrade can be performed
  • Monitor the web server’s memory usage and CPU load for abnormal spikes and set alerts to detect traffic patterns that may indicate an attempt to exhaust resources

Generated by OpenCVE AI on August 1, 2026 at 09:19 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4826-1 puma security update
Github GHSA Github GHSA GHSA-qpgp-93vx-g8v8 Puma PROXY Protocol v1 Parser Allows Remote Memory Exhaustion
History
Type Values Removed Values Added
First Time appeared Puma
Puma puma
Vendors & Products Puma
Puma puma
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description Puma is a Ruby/Rack web server built for parallelism. From 5.5.0 until 7.2.1 and 8.0.2, when PROXY protocol v1 support is enabled, Puma reads incoming bytes into an internal buffer while waiting for CRLF to determine whether a PROXY v1 line is present, allowing an attacker that continuously sends bytes without CRLF to cause unbounded in-process memory growth and additional CPU cost from repeatedly scanning the growing buffer. This issue is fixed in versions 7.2.1 and 8.0.2.
Title Puma PROXY Protocol v1 Parser Allows Remote Memory Exhaustion
Weaknesses CWE-400
References
Metrics cvssV3_1

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

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-770

    Allocation of Resources Without Limits or Throttling

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Jul 15, 2026, 2:28 PM
Reserved
May 19, 2026, 10:16 PM
Status
Deferred
Published
Jul 14, 2026, 8:17 PM
Modified
Jul 15, 2026, 6:15 PM
Severity
Important
Public date
Jul 14, 2026, 7:54 PM