Skip to main content

HTTP Request Smuggling

web HIGH

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

How It Works

HTTP request smuggling exploits inconsistencies in how front-end and back-end servers parse HTTP message boundaries. When a reverse proxy or load balancer forwards requests to a back-end server, both must agree on where one request ends and the next begins. This boundary is defined by either Content-Length (specifying exact body bytes) or Transfer-Encoding: chunked (indicating variable-length chunks). When servers interpret these headers differently, an attacker can craft a malicious request that appears as one request to the front-end but becomes two requests to the back-end.

The classic CL.TE variant works when the front-end prioritizes Content-Length while the back-end honors Transfer-Encoding. An attacker sends a request with both headers where the Content-Length value is smaller than the actual body. The front-end forwards the entire request, believing it ends earlier than it actually does. The back-end processes the declared content length as one request, then interprets the remaining bytes as the start of a new request—which gets prepended to the next legitimate user's request that arrives.

The TE.CL variant reverses this: the front-end reads chunked encoding while the back-end uses Content-Length. TE.TE attacks exploit even subtler differences—both servers support chunked encoding, but one can be tricked through obfuscation like extra spaces, mixed-case headers, or duplicate Transfer-Encoding directives. The attacker's smuggled request fragment poisons the request stream, affecting whatever user request follows.

Impact

  • Authentication bypass — smuggled requests inherit the authenticated session of the subsequent victim request
  • Request hijacking — capture sensitive data (credentials, tokens, API keys) from other users' requests by smuggling a prefix that logs or reflects their data
  • Web cache poisoning — inject malicious content that gets cached and served to all users accessing that resource
  • Cross-site scripting — smuggle requests that inject JavaScript payloads into responses served to other users
  • Access control circumvention — route requests to restricted endpoints by bypassing front-end security filters

Real-World Examples

Security researchers discovered request smuggling vulnerabilities in major CDN providers and reverse proxies throughout 2019-2020, affecting services that process billions of requests daily. Attackers successfully bypassed WAF protections by smuggling malicious payloads that the security layer never inspected, since the WAF and back-end disagreed on request boundaries.

E-commerce platforms running vulnerable configurations experienced account takeover attacks where smuggled requests captured session tokens from subsequent legitimate user requests, granting attackers full account access without credential theft.

Content delivery networks suffered cache poisoning incidents where attackers smuggled requests causing the CDN to cache malicious JavaScript, which was then served to thousands of users requesting the same resource.

Mitigation

  • Deploy HTTP/2 end-to-end — eliminates ambiguity since HTTP/2 uses binary framing with explicit length prefixes
  • Reject ambiguous requests — drop any request containing both Content-Length and Transfer-Encoding headers
  • Normalize forwarded requests — ensure the front-end rewrites requests to use only one length mechanism before forwarding
  • Disable back-end connection reuse — configure each back-end request to use a fresh connection (reduces performance but prevents smuggling)
  • Use identical HTTP parsing — deploy the same server software for both front-end and back-end tiers

Recent CVEs (369)

EPSS 1% CVSS 8.6
HIGH POC This Week

An exploitable vulnerability exists in the REST parser of video-core's HTTP server of the Samsung SmartThings Hub STH-ETH-250 - Firmware version 0.20.17. Rated high severity (CVSS 8.6), this vulnerability is remotely exploitable, no authentication required, low attack complexity. Public exploit code available and no vendor patch available.

Information Disclosure Samsung Request Smuggling +1
NVD
EPSS 1% CVSS 10.0
CRITICAL POC Act Now

An exploitable vulnerability exists in the REST parser of video-core's HTTP server of the Samsung SmartThings Hub STH-ETH-250 - Firmware version 0.20.17. Rated critical severity (CVSS 10.0), this vulnerability is remotely exploitable, no authentication required, low attack complexity. Public exploit code available and no vendor patch available.

Information Disclosure Samsung Request Smuggling +1
NVD
EPSS 1% CVSS 6.1
MEDIUM This Month

HPE has identified a remote HOST header attack vulnerability in HPE CentralView Fraud Risk Management earlier than version CV 6.1. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no authentication required, low attack complexity. No vendor patch available.

Information Disclosure HP Request Smuggling +1
NVD
EPSS 1% CVSS 5.4
MEDIUM PATCH This Month

It was found that Keycloak would accept a HOST header URL in the admin console and use it to determine web resource locations. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploitable, low attack complexity. This HTTP Request/Response Smuggling vulnerability could allow attackers to manipulate HTTP request interpretation between frontend and backend servers.

XSS Red Hat Request Smuggling +2
NVD
EPSS 7% CVSS 7.4
HIGH POC This Week

An active network attacker (MiTM) can achieve remote code execution on a machine that runs IKARUS Anti Virus 2.16.7. Rated high severity (CVSS 7.4), this vulnerability is no authentication required. Public exploit code available and no vendor patch available.

RCE Microsoft Request Smuggling +2
NVD Exploit-DB
EPSS 4% CVSS 9.8
CRITICAL PATCH Act Now

The net/http library in net/http/transfer.go in Go before 1.4.3 does not properly parse HTTP headers, which allows remote attackers to conduct HTTP request smuggling attacks via a request with two. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentication required, low attack complexity. This HTTP Request/Response Smuggling vulnerability could allow attackers to manipulate HTTP request interpretation between frontend and backend servers.

Information Disclosure Golang Red Hat +8
NVD GitHub
EPSS 12% CVSS 9.8
CRITICAL PATCH Act Now

The net/http library in net/textproto/reader.go in Go before 1.4.3 does not properly parse HTTP header keys, which allows remote attackers to conduct HTTP request smuggling attacks via a space. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentication required, low attack complexity. Epss exploitation probability 11.9%.

Information Disclosure Golang Red Hat +8
NVD GitHub
EPSS 1% CVSS 8.1
HIGH POC This Week

AeroAdmin 4.1 uses an insecure protocol (HTTP) to perform software updates. Rated high severity (CVSS 8.1), this vulnerability is remotely exploitable, no authentication required. Public exploit code available and no vendor patch available.

Information Disclosure Request Smuggling Aeroadmin
NVD
EPSS 2% CVSS 9.9
CRITICAL POC PATCH Act Now

ASP.NET Core Kestrel request smuggling allows a low-privileged network attacker (PR:L, no user interaction) to desynchronize HTTP request framing between Kestrel and an upstream proxy or CDN, potentially leading to credential theft, cache poisoning, access-control bypass, and other downstream compromise; the vector scores 9.9 with scope change and high confidentiality/integrity impact. Affected deployments include ASP.NET Core/Kestrel applications and Alpine's dotnet8-runtime before 8.0.21-r0, with CPE data also associating Visual Studio 2022. Publicly available exploit code exists, EPSS is 1.68% (82nd percentile), and no CISA KEV confirmation was provided.

Information Disclosure Microsoft Request Smuggling +2
NVD GitHub Exploit-DB
Prev Page 5 of 5

Quick Facts

Typical Severity
HIGH
Category
web
Total CVEs
369

Related CWEs

MITRE ATT&CK

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