Webgoat Password Reset 6 Info
POST /WebGoat/PasswordReset/reset/reset-password/confirm-password-reset ... username=tom&resetCode=123456&newPassword=Hacked123!
username=attacker&securityQuestion=What+is+your+favorite+color%3F&answer=red The server accepts this because it only checks that answer matches the securityQuestion for some user – but it doesn’t tie the answer to the original username ( tom ). The server now thinks you (attacker) have correctly answered the security question and sends a reset code to your email (simulated in WebGoat’s console or logs). Look for a line like: Your password reset code is: 123456 Step 5: Reset the Victim’s Password Now send the final POST request to actually change the password. Intercept the password reset submission and modify it as follows: webgoat password reset 6
Always ask: “Does each step of this process cryptographically prove that the user is who they claim to be?” Try it yourself: Download WebGoat (https://github.com/WebGoat/WebGoat) and complete Lesson 6. Then fix the code and re‑test. The server now thinks you (attacker) have correctly
WebGoat (OWASP’s deliberately insecure web application) is the perfect training ground for understanding real-world security flaws. Lesson 6 – Password Reset focuses on a classic logic flaw: Insecure Password Recovery . Then fix the code and re‑test
The request will look something like this:





