Vulnerability A10 Unvalidated Redirects and Forwards Description:

screen

Write-up

For almost all levels I will be using Burpsuite. Burpsuite is an interception proxy that lets us modify the HTTP request / response by intercepting the data between the browser and the web server.

As stated in the description, it looks like level 13 is using a redirect function via URL parameter “redirect” that send us to ex13-task.php. We can see that just by mouse-overing the Level13 link from the drop down menu.

screen1

Our goal is to make the function work with external domain.

If we try the following url we get “bad parameter” error.

http://ctf.infosecinstitute.com/ctf2/exercises/ex13.php?redirect=wWw.google.com

If we try without the “www”, we get redirected to page “google.com” on the same domain, since this page does not exist we get a 404 Not Found response code.

screen2

We now know that there’s a filter that blocks any argument contains “www” case-insensitive.

The next test would be to try using the protocol.

http://ctf.infosecinstitute.com/ctf2/exercises/ex13.php?redirect=hTtP://google.com

Again we get the “bad parameter” error. Seems like there’s another filter for “http” keyword case-insensitive. If we try “ftp://” however, we do get redirected to google.com on port 21 (ftp).

http://ctf.infosecinstitute.com/ctf2/exercises/ex13.php?redirect=ftp://google.com

Of course, we get Connection Timeout Error since there’s no FTP server at google.com address.

screen3

If we use the following we get a redirect to the domain in our argument but this way we don’t complete the level :(.

http://ctf.infosecinstitute.com/ctf2/exercises/ex13.php?redirect=\\google.com

If we try the oposite slash however, the forward slash, the level marks as completed :).

http://ctf.infosecinstitute.com/ctf2/exercises/ex13.php?redirect=//google.com

screen4