labs
Lab - 1: HTTP request smuggling, basic CL.TE vulnerability (P)
This lab involves a front-end and back-end server, and the front-end server doesn't support chunked encoding. The front-end server rejects requests that aren't using the GET or POST method. To solve the lab, smuggle a request to the back-end server, so that the next request processed by the back-end server appears to use the method GPOST.
send this request twice
front end server will accept all and back end will execute only 0 and G is left for the first request and G is appended to the second request and will get an error
Lab - 2: HTTP request smuggling, basic TE.CL vulnerability (P)
This lab involves a front-end and back-end server, and the back-end server doesn't support chunked encoding. The front-end server rejects requests that aren't using the GET or POST method. To solve the lab, smuggle a request to the back-end server, so that the next request processed by the back-end server appears to use the method GPOST.
Two
Enter
after 0 is important.
Lab - 3: HTTP request smuggling, obfuscating the TE header (P)
This lab involves a front-end and back-end server, and the two servers handle duplicate HTTP request headers in different ways. The front-end server rejects requests that aren't using the GET or POST method. To solve the lab, smuggle a request to the back-end server, so that the next request processed by the back-end server appears to use the method GPOST.
How to find
Lab - 4: HTTP request smuggling, confirming a CL.TE vulnerability via differential responses (P)
This lab involves a front-end and back-end server, and the front-end server doesn't support chunked encoding. To solve the lab, smuggle a request to the back-end server, so that a subsequent request for / (the web root) triggers a 404 Not Found response.
Lab - 5: HTTP request smuggling, confirming a TE.CL vulnerability via differential responses (P)
This lab involves a front-end and back-end server, and the back-end server doesn't support chunked encoding. To solve the lab, smuggle a request to the back-end server, so that a subsequent request for / (the web root) triggers a 404 Not Found response.
How to exploit
Lab - 6: Exploiting HTTP request smuggling to bypass front-end security controls, CL.TE vulnerability (P)
This lab involves a front-end and back-end server, and the front-end server doesn't support chunked encoding. There's an admin panel at /admin, but the front-end server blocks access to it. To solve the lab, smuggle a request to the back-end server that accesses the admin panel and deletes the user carlos.
Try with
get 401 unauthorized
Duplicate header names are not allowed
get the admin panel
change the
GET /admin/delete?username=carlos
to solve the lab
Lab - 7: Exploiting HTTP request smuggling to bypass front-end security controls, TE.CL vulnerability (P)
This lab involves a front-end and back-end server, and the back-end server doesn't support chunked encoding. There's an admin panel at /admin, but the front-end server blocks access to it. To solve the lab, smuggle a request to the back-end server that accesses the admin panel and deletes the user carlos.
front end is TE and send all the requests to the backend
backend is CL and in the first request, until 87 is processed and the rest are remained for the next round
87 is hexadecimal which is 135 characters from GET /admin/... to x=4
Lab - 8: Exploiting HTTP request smuggling to reveal front-end request rewriting (P)
This lab involves a front-end and back-end server, and the front-end server doesn't support chunked encoding. There's an admin panel at /admin, but it's only accessible to people with the IP address 127.0.0.1. The front-end server adds an HTTP header to incoming requests containing their IP address. It's similar to the X-Forwarded-For header but has a different name. To solve the lab, smuggle a request to the back-end server that reveals the header that is added by the front-end server. Then smuggle a request to the back-end server that includes the added header, accesses the admin panel, and deletes the user carlos.
first test whether it is CL.TE or TE.CL and found that it is CL.TE
there is a search parameter in POST request and reflect back
to find which Header is responsible for IP address
and found that
after trying a little bit
Lab - 9: Exploiting HTTP request smuggling to deliver reflected XSS (P)
This lab involves a front-end and back-end server, and the front-end server doesn't support chunked encoding. The application is also vulnerable to reflected XSS via the User-Agent header. To solve the lab, smuggle a request to the back-end server that causes the next user's request to receive a response containing an XSS exploit that executes alert(1).
first test whether it is CL.TE or TE.CL and found that it is CL.TE
reflected XSS at blog post
Lab - 10: H2.CL request smuggling (P)
This lab is vulnerable to request smuggling because the front-end server downgrades HTTP/2 requests even if they have an ambiguous length.
To solve the lab, perform a request smuggling attack that causes the victim's browser to load a malicious JavaScript file from the exploit server and call alert(document.cookie). The victim user accesses the home page every 10 seconds.
Last updated