This lab is vulnerable to password reset poisoning. Carlos will click any links in password reset emails he receives. To solve the lab, access Carlos's "My account" page. You can access your emails by clicking "Exploit server" > "Email client".
With Burp running, investigate the password reset functionality. Observe that a link containing a unique reset token is sent via email.
Send the POST /forgot-password request to Burp Repeater. Notice that the X-Forwarded-Host header is supported and you can use it to point the dynamically generated reset link to an arbitrary domain.
Go to the exploit server and make a note of your exploit server URL.
Go back to the request in Burp Repeater and add the X-Forwarded-Host header with your exploit server URL: X-Forwarded-Host: your-exploit-server-id.web-security-academy.net
Change the username parameter to carlos and send the request.
Go to the exploit server and open the access log. You should see a GET /forgot-password request, which contains the victim's token as a query parameter. Make a note of this token.
Go back to your email client and copy the valid password reset link (not the one that points to the exploit server). Paste this into your browser and change the value of the temp-forgot-password-token parameter to the value that you stole from the victim.
Load this URL and set a new password for Carlos's account.
Log in to Carlos's account using the new password and click "My account" to solve the lab.
Want to track your progress and have a more personalized learning experience? (It's free!)