te0-request-smuggling · git:20260504.2a64374 · 2026-05-04 · sha256 7dce860c8abe1828
te0-request-smuggling git:20260504.2a64374A
Immutable. This exact content is served forever at /api/v1/blob/7dce860c8abe1828.
--- name: te0-request-smuggling description: TE.0 request smuggling where front-end processes Transfer-Encoding chunked but back-end ignores it entirely. Use when reverse proxy + backend detected and standard CL.TE/TE.CL fails. --- # TE.0 Request Smuggling ## Pattern - Reverse proxy + backend architecture (common in cloud deployments) - Standard CL.TE and TE.CL smuggling attempts failed - Backend ignores Transfer-Encoding header entirely (treats body as length 0) - Front-end processes chunked encoding and forwards full body - Google Cloud, AWS ALB, nginx + misconfigured backends common targets ## Probe ```http OPTIONS / HTTP/1.1 Host: target.com Transfer-Encoding: chunked Content-Length: 0 50 GET /admin HTTP/1.1 Host: target.com X-Ignore: x 0 ``` **Key details:** - OPTIONS method specifically — GET/POST may be handled differently - Front-end sees chunked body, forwards it. Backend sees CL:0, ignores body. - Smuggled request (`GET /admin`) poisons the next legitimate request's response. - Vary the smuggled path to confirm: `/admin`, `/logout`, redirect to attacker domain. ## Indicators - Next legitimate request returns response for smuggled path (response poisoning) - Unexpected 3xx redirect to attacker-controlled domain - Session data from other users appears in your response - Timing: second request arrives faster than expected (already queued) ## Chain With - web-cache-deception-path (poison cache via smuggled request) ## Reference https://www.bugcrowd.com/blog/unveiling-te-0-http-request-smuggling-discovering-a-critical-vulnerability-in-thousands-of-google-cloud-websites/