Skip to main content

Rack CVE-2026-32762

| EUVDEUVD-2026-18423 MEDIUM
Interpretation Conflict (CWE-436)
2026-04-02 GitHub_M GHSA-qfgr-crr9-7r49
6.5
CVSS 3.1 · NVD
View

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V4 - API and Web Service Interpretation consistency
Impact

The CVSS score of 4.8 reflects low to medium severity: the vector CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N indicates remote, unauthenticated attack with high complexity, resulting in low confidentiality and integrity impact with no availability impact. The high complexity factor reflects that successful exploitation requires specific architecture conditions-specifically, an inconsistency between how Rack and an upstream intermediary parse the same Forwarded header. Real-world risk is contingent on deployment topology: applications behind a proxy or WAF that normalizes or validates quoted Forwarded values differently from Rack are at risk, while standalone Rack deployments without trusted upstream proxies face minimal risk. The vulnerability is not a code execution or authentication bypass; rather, it enables request smuggling at the HTTP semantics layer (header injection), which could lead to cache poisoning, host confusion, or protocol downgrade if combined with other logic flaws. No KEV status, public POC, or EPSS data are available; however, the parser differential nature and RFC compliance issue suggest moderate real-world exploitability in shared-hosting or multi-tenant proxy environments. This is a genuine priority for production deployments behind load balancers or WAFs, but not a critical emergency.

Exploit ScenarioDerived

An attacker in a position to inject or modify HTTP headers (e.g., via a compromised client, MitM, or in an open proxy environment) crafts a Forwarded header with a quoted-string value containing a semicolon, such as 'for="192.0.2.1; for=attacker.example.com"'. When the request passes through an upstream WAF or proxy that correctly parses the RFC 7239 format and preserves the header intact, it reaches a Rack application. Rack incorrectly splits this single quoted directive into two, interpreting the attacker's injected 'for=attacker.example.com' as a separate Forwarded directive. This causes the application to believe the request originated from attacker.example.com instead of the legitimate upstream proxy, potentially poisoning caches, bypassing IP-based ACLs, or confusing protocol/host detection logic if the application relies on Forwarded headers for routing decisions. No public exploit code is currently available, and no active exploitation has been reported.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 02, 2026

Rack::Utils.forwarded_values in Rack 3.0.0.beta1 through 3.1.20 and 3.2.0 through 3.2.5 misparses RFC 7239 Forwarded headers by splitting on semicolons before processing quoted strings, allowing attackers to inject or smuggle host, proto, for, or by parameters when an upstream proxy or WAF interprets the same header differently. The vulnerability affects request routing and protocol detection logic, enabling potential cache poisoning, host header injection, or protocol confusion attacks in architectures where intermediaries validate quoted Forwarded values inconsistently. No public exploit code or active exploitation has been confirmed at the time of analysis.

RemediationAI

Vendor-released patch: upgrade to Rack 3.1.21 or 3.2.6 or later, which correctly parse quoted-string values in RFC 7239 Forwarded headers before splitting on semicolons. For Ruby on Rails users, ensure Gemfile.lock specifies the patched Rack version and run bundle update rack. If immediate patching is not feasible, disable or sanitize Forwarded header processing if not required (e.g., by configuring upstream proxies to strip untrusted Forwarded headers before forwarding to Rack), or validate that upstream intermediaries and Rack use identical RFC 7239 parsing logic. Refer to the official advisory at https://github.com/rack/rack/security/advisories/GHSA-qfgr-crr9-7r49 for details. Test patched deployments to ensure Forwarded header parsing behaves as expected, especially in multi-proxy setups.

Affected VersionsENISA

rack 3.2.0, < 3.2.6
rack 3.0.0.beta1, < 3.1.21

Affected Packages

rubygems rack fix: 3.1.21, 3.2.6
euvd rack_3_0_0_beta1 fix: 3.1.21

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in rubygems, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Rack is a modular Ruby web application server interface (WSGI-equivalent for Ruby) that standardizes how HTTP requests are processed. The Rack::Utils.forwarded_values method implements RFC 7239 Forwarded header parsing to extract client IP addresses, protocols, and hostnames from proxied requests. The vulnerability stems from improper parsing order: the code splits header values on semicolons (which delimit Forwarded directives per RFC 7239) before decoding quoted-string values, violating RFC 5234 rules where quoted strings may legitimately contain semicolons when escaped or quoted. This creates a parser differential where Rack splits a single quoted directive into multiple directives, while RFC-compliant upstream proxies or WAFs treat it as a single value. The affected CPE (cpe:2.3:a:rack:rack:*:*:*:*:*:*:*:*) indicates all Rack versions in the 3.0 and 3.2 branches before patching are vulnerable. The root cause is classified under CWE-436 (Interpretation Conflict), a parser differentiation vulnerability.

Know when Rack gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 6.5 MEDIUM
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
SUSE 4.8 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Red Hat 4.8 MEDIUM

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Lifecycle Timeline

3
CVSS changed
Jul 24, 2026 - 21:22 NVD
4.8 (MEDIUM) 6.5 (MEDIUM)
Patch released
Apr 03, 2026 - 02:30 nvd
Patch available
CVE Published
Apr 02, 2026 - 17:06 nvd
MEDIUM 4.8

DescriptionNVD

Rack is a modular Ruby web server interface. From versions 3.0.0.beta1 to before 3.1.21 and 3.2.0 to before 3.2.6, Rack::Utils.forwarded_values parses the RFC 7239 Forwarded header by splitting on semicolons before handling quoted-string values. Because quoted values may legally contain semicolons, a header can be interpreted by Rack as multiple Forwarded directives rather than as a single quoted for value. In deployments where an upstream proxy, WAF, or intermediary validates or preserves quoted Forwarded values differently, this discrepancy can allow an attacker to smuggle host, proto, for, or by parameters through a single header value. This issue has been patched in versions 3.1.21 and 3.2.6.

Threat Intelligence Overview

EPSS Score
0.0%
Top 92% exploitable
Threat Intel
1
1 source
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Rack

View all
CVE-2026-22860 HIGH POC
7.5 Feb 18

Directory traversal in Rack versions prior to 2.2.22, 3.1.20, and 3.2.5 allows unauthenticated remote attackers to list

CVE-2024-26141 HIGH POC
7.5 Feb 29

Rack is a modular Ruby web server interface. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable,

CVE-2024-25126 HIGH POC
7.5 Feb 29

Rack is a modular Ruby web server interface. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable,

CVE-2020-8184 HIGH POC
7.5 Jun 19

A reliance on cookies without validation/integrity check security vulnerability exists in rack < 2.2.3, rack < 2.1.4 tha

CVE-2022-30123 CRITICAL
10.0 Dec 05

A sequence injection vulnerability exists in Rack <2.0.9.1, <2.1.4.1 and <2.2.3.1 which could allow is a possible shell

CVE-2025-25184 MEDIUM POC
5.7 Feb 12

Rack provides an interface for developing web applications in Ruby. Rated medium severity (CVSS 5.7), this vulnerability

CVE-2026-25500 MEDIUM POC
5.4 Feb 18

Rack's Directory module fails to sanitize filenames when generating HTML directory listings, allowing attackers to craft

CVE-2026-39324 CRITICAL
9.3 Apr 07

Session authentication bypass in Rack::Session::Cookie 2.0.0 through 2.1.1 allows unauthenticated remote attackers to fo

CVE-2020-8161 HIGH
8.6 Jul 02

A directory traversal vulnerability exists in rack < 2.2.0 that allows an attacker perform directory traversal vulnerabi

CVE-2013-0263 MEDIUM
5.1 Feb 08

Rack::Session::Cookie in Rack 1.5.x before 1.5.2, 1.4.x before 1.4.5, 1.3.x before 1.3.10, 1.2.x before 1.2.8, and 1.1.x

CVE-2023-27530 HIGH
7.5 Mar 10

A DoS vulnerability exists in Rack <v3.0.4.2, <v2.2.6.3, <v2.1.4.3 and <v2.0.9.3 within in the Multipart MIME parsing co

CVE-2025-61772 HIGH
7.5 Oct 07

Memory exhaustion denial of service in the Ruby Rack web server interface (versions prior to 2.2.19, 3.1.17, and 3.2.2)

Vendor StatusVendor

SUSE

Severity: Medium
Product Status
SUSE Linux Enterprise High Availability Extension 15 SP7 Fixed
SUSE Linux Enterprise High Availability Extension 15 SP7 Fixed
SUSE Linux Enterprise High Availability Extension 16.1 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed
SUSE Linux Enterprise Module for Public Cloud 15 SP7 Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy