CVE-2026-47737 Puma PROXY Protocol v1 Accepts Repeated Protocol Headers on Persistent Connections
Attackers can spoof source IP addresses by injecting repeated PROXY protocol headers on persistent connections in Puma web server.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-47737?
CVE-2026-47737 is a high-severity vulnerability in puma, published on 14 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
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.
Which versions are affected by CVE-2026-47737?
4 open source packages ship an affected version, including puma.
| Package | Affected | Fixed in |
|---|---|---|
puma RubyGems | From 5.5.0 | 7.2.1 |
puma RubyGems | From 5.5.0 | 7.2.1 |
puma RubyGems | From 8.0.0 | 8.0.2 |
puma RubyGems | From 8.0.0 | 8.0.2 |
How do I fix CVE-2026-47737?
Upgrade puma to a fixed version for your release line: 7.2.1 or 8.0.2.
Is CVE-2026-47737 being exploited?
There is no known exploitation of CVE-2026-47737 in the wild and no public exploit code.
Sources
Also known as CLEANSTART-2026-CK66622, CLEANSTART-2026-OT47586, DEBIAN-CVE-2026-47737, GHSA-2vqw-3mp8-cgmx, MINI-24x8-c52w-83cr, MINI-3pfv-c45h-h6h3 and 25 more.