Skip to main content

Gazelle EUVDEUVD-2026-27825

| CVE-2026-40562 HIGH
HTTP Request/Response Smuggling (CWE-444)
2026-05-06 CPANSec GHSA-mjw2-gf6p-382h
7.5
CVSS 3.1 · Vendor: CPANSec
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft HTTP request with both Transfer-Encoding and Content-Length
  2. Delivery
    Send to target with Gazelle backend
  3. Exploit
    Front-end proxy processes chunked encoding
  4. Execution
    Gazelle processes fixed Content-Length
  5. Persist
    Smuggled payload interpreted as next request
  6. Impact
    Manipulate backend request routing or cache

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V4 - API and Web Service HTTP request consistency
Exploitation Conditions

Exploitation requires Gazelle version 0.49 or earlier deployed behind a front-end reverse proxy that correctly implements RFC 7230 Transfer-Encoding precedence (nginx, Apache with mod_proxy, HAProxy, Cloudflare, Akamai, or similar standards-compliant HTTP intermediaries). The front-end proxy must forward requests containing both Transfer-Encoding: chunked and Content-Length headers rather than rejecting them outright. Standalone Gazelle deployments receiving direct internet traffic without an intervening proxy are not exploitable via this vector, as the discrepancy requires two systems interpreting HTTP boundaries differently. HTTP/1.1 protocol support is required; HTTP/2 deployments are not affected as HTTP/2 uses binary framing without these headers. The attack complexity is low (AC:L) as standard HTTP clients can construct the malicious requests without special conditions.

Impact

Real-world risk is significant for production deployments behind reverse proxies. CVSS vector (AV:N/AC:L/PR:N/UI:N) indicates remote unauthenticated exploitation with low complexity, though integrity-only impact (I:H/C:N/A:N) limits severity to cache poisoning, authorization bypass, or request routing manipulation rather than data exfiltration. SSVC assessment confirms automatable exploitation with partial technical impact and no observed exploitation at time of analysis, suggesting this is exploitable but not yet weaponized in the wild. The vulnerability requires a specific architecture: Gazelle must be deployed behind a front-end reverse proxy that correctly implements RFC 7230 (nginx, Apache, HAProxy, CDNs). For standalone Gazelle deployments without reverse proxies, the vulnerability exists but has no practical exploitation path. Priority depends on deployment architecture: HIGH for reverse-proxy configurations common in production Perl web applications, LOW for standalone development servers. The availability of a CPANSec patch reduces remediation friction, though Perl module update cycles may lag in enterprise environments.

Exploit ScenarioDerived

An attacker crafts an HTTP request with both Transfer-Encoding: chunked and Content-Length headers, sending it to a website using Gazelle behind an nginx reverse proxy. Nginx correctly processes the chunked encoding and forwards what it believes is a complete request to Gazelle. Gazelle incorrectly uses the Content-Length value, treating only part of the chunked data as the first request body and interpreting the remainder as the start of a second request. The attacker smuggles a malicious second request (e.g., a cache-poisoning payload or authorization bypass attempt) that Gazelle attributes to the next legitimate client connection served by the same backend worker, enabling request routing manipulation or privilege escalation without authentication.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.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 – May 06, 2026

HTTP Request Smuggling in Gazelle (Perl web server) versions through 0.49 enables attackers to smuggle malicious requests through reverse proxies by exploiting incorrect header precedence. Gazelle violates RFC 7230 by prioritizing Content-Length over Transfer-Encoding: chunked when both headers are present, allowing desynchronization between front-end proxies and the backend server. SSVC framework indicates the vulnerability is automatable with partial technical impact, while CVSS 7.5 reflects network-accessible unauthenticated exploitation with high integrity impact. A vendor patch is available via CPANSec.

RemediationAI

Upgrade Gazelle to version 0.50 or later, which corrects the header precedence handling to comply with RFC 7230 section 3.3.3. The vendor patch is available from CPANSec at https://security.metacpan.org/patches/G/Gazelle/0.49/CVE-2026-40562-r1.patch for manual application to version 0.49 if immediate upgrade is not feasible. For environments unable to patch immediately, implement the following compensating controls at the reverse proxy layer: configure strict header normalization that strips Content-Length headers when Transfer-Encoding is present (most modern proxies support this via directives like nginx's proxy_request_buffering or HAProxy's http-buffer-request), or deploy Web Application Firewall rules to block requests containing both headers simultaneously (trade-off: may break legitimate clients if misconfigured, requires testing). Validate that front-end proxies are configured to reject ambiguous requests rather than forward them. Network segmentation limiting Gazelle exposure to trusted proxies only reduces but does not eliminate risk from compromised intermediate systems.

Affected VersionsENISA

Gazelle 0 ≤0.49

Affected Packages

euvd gazelle no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

HTTP Request Smuggling (CWE-444) exploits discrepancies in how HTTP message boundaries are parsed by chained HTTP processors. RFC 7230 section 3.3.3 explicitly mandates that when both Transfer-Encoding and Content-Length headers are present, Transfer-Encoding must take precedence and Content-Length must be ignored. Gazelle, a high-performance preforking Plack handler written in Perl (CPE: cpe:2.3:a:kazeburo:gazelle), incorrectly reverses this precedence through version 0.49. This implementation flaw creates a desynchronization vector where a reverse proxy correctly honoring Transfer-Encoding will interpret request boundaries differently than Gazelle, which incorrectly honors Content-Length. Attackers can craft ambiguous requests where the front-end processes chunked encoding while Gazelle processes fixed-length content, causing the smuggled portion to be interpreted as the start of a subsequent request.

Know when Gazelle 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

Vendor (CPANSec) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N

Primary rating from Vendor (CPANSec) · only source for this CVE.

CVSS VectorVendor: CPANSec

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

Lifecycle Timeline

1
CVSS changed
May 06, 2026 - 15:22 NVD
7.5 (None) 7.5 (HIGH)

DescriptionCVE.org

Gazelle versions through 0.49 for Perl allows HTTP Request Smuggling via Improper Header Precedence.

Gazelle incorrectly prioritizes "Content-Length" over "Transfer-Encoding: chunked" when both headers are present in an HTTP request. Per RFC 7230 3.3.3, Transfer-Encoding must take precedence.

An attacker could exploit this to smuggle malicious HTTP requests via a front-end reverse proxy.

Executive ViewAI

Why It Matters

Gazelle web server versions through 0.49 contain an HTTP request smuggling vulnerability that allows unauthenticated attackers to bypass proxy security controls and inject malicious requests directly to backend servers. Organizations running Gazelle in production environments with reverse proxies face immediate risk of request desynchronization attacks that could compromise application integrity and enable unauthorized actions.

Business Impact: High
Compensating Controls

Apply vendor patch. If immediate patching is unavailable: implement strict request validation rules in reverse proxy (deny requests with both Content-Length and Transfer-Encoding: chunked headers); configure proxy to reject ambiguous header combinations; enable detailed HTTP request logging to detect smuggling attempts; consider temporary traffic routing around affected Gazelle instances if alternative infrastructure exists.

Threat Intelligence Overview

EPSS Score
0.0%
Top 92% exploitable
Data Quality
5 sources
Confidence: Medium

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 HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

HTTP request smuggling exploits inconsistencies in how front-end and back-end servers parse HTTP message boundaries.

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

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