Description
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::Request parses the Host header using an AUTHORITY regular expression that accepts characters not permitted in RFC-compliant hostnames, including /, ?, #, and @. Because req.host returns the full parsed value, applications that validate hosts using naive prefix or suffix checks can be bypassed. This can lead to host header poisoning in applications that use req.host, req.url, or req.base_url for link generation, redirects, or origin validation. This issue has been patched in versions 3.1.21 and 3.2.6.
Published: 2026-04-02
Score: 4.8 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Host header bypass leading to potential malicious redirects and link manipulation
Action: Apply Update
AI Analysis

Impact

The vulnerability sits in Rack’s request parsing logic where the Host header is matched against an AUTHORITY regular expression that accepts characters forbidden in RFC-compliant hostnames, such as '/', '?', '#', and '@'. Apps that determine a request’s origin or generate URLs from req.host, req.url or req.base_url can inadvertently trust the attacker supplied value. Consequently, a crafted Host header can poison the host for redirects, link generation or origin validation, enabling phishing, open redirects or privilege escalation.

Affected Systems

Ruby web applications built on the Rack framework are directly affected. Specific vulnerable releases are Rack 3.0.0.beta1 up to 3.1.20 and Rack 3.2.0 up to 3.2.5. The issue was fixed in Rack 3.1.21 and 3.2.6. Users of these versions should verify that their environment runs a patched release.

Risk and Exploitability

The CVSS base score of 4.8 indicates a moderate severity. Exploitation only requires that the attacker can send a custom Host header, which is trivial from any HTTP request. Because the EPSS score is unavailable and the vulnerability is not listed in CISA’s KEV, there is currently no evidence of active exploitation. However, the attack path is straightforward, and the impact can be significant for applications that rely on host allowlists for security checks, making this a low to moderate risk that should be mitigated promptly.

Generated by OpenCVE AI on April 2, 2026 at 22:56 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update Rack to version 3.1.21 or 3.2.6 or later

Generated by OpenCVE AI on April 2, 2026 at 22:56 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-g2pf-xv49-m2h5 Rack::Request accepts invalid Host characters, enabling host allowlist bypass
History

Fri, 03 Apr 2026 10:15:00 +0000

Type Values Removed Values Added
First Time appeared Rack
Rack rack
Vendors & Products Rack
Rack rack

Thu, 02 Apr 2026 20:30:00 +0000

Type Values Removed Values Added
Description 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::Request parses the Host header using an AUTHORITY regular expression that accepts characters not permitted in RFC-compliant hostnames, including /, ?, #, and @. Because req.host returns the full parsed value, applications that validate hosts using naive prefix or suffix checks can be bypassed. This can lead to host header poisoning in applications that use req.host, req.url, or req.base_url for link generation, redirects, or origin validation. This issue has been patched in versions 3.1.21 and 3.2.6.
Title Rack: `Rack::Request` accepts invalid Host characters, enabling host allowlist bypass.
Weaknesses CWE-1286
References
Metrics cvssV3_1

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

ssvc

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


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-04-02T17:44:03.453Z

Reserved: 2026-03-30T20:52:53.284Z

Link: CVE-2026-34835

cve-icon Vulnrichment

Updated: 2026-04-02T17:43:58.046Z

cve-icon NVD

Status : Undergoing Analysis

Published: 2026-04-02T18:16:33.967

Modified: 2026-04-03T16:10:23.730

Link: CVE-2026-34835

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-03T09:18:12Z

Weaknesses