CVE-2026-47737
Puma PROXY Protocol v1 Accepts Repeated Protocol Headers on Persistent Connections
CVSS Score
7.5
EPSS Score
0.0%
EPSS Percentile
0th
Puma is a Ruby/Rack web server built for parallelism. From 5.5.0 until 7.2.1 and 8.0.2, Puma is vulnerable to source IP spoofing when set_remote_address proxy_protocol: :v1 is enabled and persistent connections are used because Puma incorrectly re-parses PROXY protocol headers after each keep-alive request on the same connection, allowing an attacker to inject a second PROXY header and overwrite REMOTE_ADDR. This issue is fixed in versions 7.2.1 and 8.0.2.
| CWE | CWE-290 CWE-345 |
| Vendor | puma |
| Product | puma |
| Published | Jul 14, 2026 |
| Last Updated | Jul 15, 2026 |
Stay Ahead of the Next One
Get instant alerts for puma puma
Be the first to know when new high vulnerabilities affecting puma puma are published โ delivered to Slack, Telegram or Discord.
Get Free Alerts โ
Free ยท No credit card ยท 60 sec setup
CVSS v3 Breakdown
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
None
Affected Versions
puma / puma
>= 5.5.0, < 7.2.1 >= 8.0.0, < 8.0.2
References
github.com: https://github.com/puma/puma/security/advisories/GHSA-2vqw-3mp8-cgmx github.com: https://github.com/puma/puma/pull/3944 github.com: https://github.com/puma/puma/pull/3947 github.com: https://github.com/puma/puma/commit/439c6136d9c2275721b7864db3ee78af7c80889f github.com: https://github.com/puma/puma/commit/ebe9db3929ab8299d19c8f5b41e8ef4f4b22fa58 github.com: https://github.com/puma/puma/releases/tag/v7.2.1 github.com: https://github.com/puma/puma/releases/tag/v8.0.2