HTTP Response Smuggling

What is HTTP Response Smuggling?

HTTP Response Smuggling is a technique used by attackers to interfere with the way a website processes sequences of HTTP requests that are received from one or more users. Attackers can use this technique to smuggle a malicious HTTP response by taking advantage of the discrepancies in interpreting the HTTP requests between two entities, such as a proxy or cache and the web server.


HTTP Response Smuggling Example

Here is a simple example of HTTP Response Smuggling:


             // HTTP request
             POST /search HTTP/1.1
             Host: www.example.com
             Content-Length: 44
             Transfer-Encoding: chunked
     
             0
     
             GET /account HTTP/1.1
             Host: www.example.com
             Cookie: sessionid=12345
             

In this example, the attacker smuggles an HTTP request in the body of another HTTP request, potentially leading to unauthorized access to sensitive information.


Prevention

Preventing HTTP Response Smuggling involves proper handling of HTTP requests and responses, and secure application design. This includes: