CVE-2024-45614

Header normalization allows for client to clobber proxy set headers in Puma

MEDIUM
5.4
CVSS Score
Published: September 19, 2024 at 10:42 PM UTC
Updated: June 17, 2026 at 07:54 AM UTC
1 product affected across 1 vendorPuma

Using puma by puma?

Get instant alerts when new vulnerabilities affect puma - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.4
Exploit prediction
EPSS 0.6%
SSVC
No known exploit

Description

Puma is a Ruby/Rack web server built for parallelism. In affected versions clients could clobber values set by intermediate proxies (such as X-Forwarded-For) by providing a underscore version of the same header (X-Forwarded_For). Any users relying on proxy set variables is affected. v6.4.3/v5.6.9 now discards any headers using underscores if the non-underscore version also exists. Effectively, allowing the proxy defined headers to always win. Users are advised to upgrade. Nginx has a underscores_in_headers configuration variable to discard these headers at the proxy level as a mitigation. Any users that are implicitly trusting the proxy defined headers for security should immediately cease doing so until upgraded to the fixed versions.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

Puma· Pumarubygems
95%
v < 5.6.9v < 6.4.36.0.0 ≤ v < 6.4.3
Affected range stops below 5.6.9, so it looks safe — our inference, not a vendor statement
Affected range stops below 6.4.3, so it looks safe — our inference, not a vendor statement

Remediation

No guide yet

No remediation guidance has been written for this CVE yet. What the record does show:

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

5.4MEDIUMGitHub_M
Attack Vector
NETWORK
Complexity
HIGH
Privileges
NONE
User Interaction
NONE
Scope
CHANGED
Confidentiality
LOW
Integrity
LOW
Availability
NONE
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-639CWE-444

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card