OAuth a, authorization framework. allows users to log in to app/sites without sharing their credentials. Key areas to scrutinize include:
In OAuth, the *redirect_uri*
parameter is used to send the user back to the client application after authentication. Some authorization servers check if the *redirect_uri*
matches the one received in the initial request to prevent attacks. However, there might be ways to bypass this validation.
When testing OAuth, experiment with the *redirect_uri*
parameter:
*redirect_uri*
.*redirect_uri*
parameters.If you can't submit an external domain as *redirect_uri*
, try changing it to point to other pages within the whitelisted domain. Look for vulnerabilities like open redirects to leak the code or token and forward users to an attacker-controlled domain.
For the authorization code flow, you need to find a vulnerability that gives you access to the query parameters, whereas for the implicit grant type, you need to extract the URL fragment.