The app allows a user to reset the password if they can prove themselves via an OTP. When the ‘forgot password’ button is pressed, the user is sent to a page where they are prompted to enter an OTP. The OTP is sent to the phone number, and if the wrong OTP is entered, the server responds with `{“OTP”:”Failure”}`. While this seems to have been implemented properly, we tried to change the server response by conducting an MITM. We changed the response from the server to `{“OTP”:”Success”}`. This redirection led us to the password change screen, where we were prompted to enter a new password.
Read the original article:
