Registration & Takeover Bugs
( Credits: HackTricks )
ATO from manipulating the email Parameter
ATO Via Request Smuggling
HTTP Request Smuggling leads to Full Accounts takeover
Duplicate Registration
Make 2 Accounts Same in everything [username and another things] but with Different email ID >> ATO
Create user named: AdMIn (uppercase & lowercase letters)
Create a user named: admin=
SQL Truncation Attack (when there is some kind of length limit in the username or email) --> Create user with name: admin [a lot of spaces] a
Play with email Parameter
uppsercase
+1@
add some some in the email
special characters in the email name (%00, %09, %20)
Put black characters after the email:
test@test.com a
victim@gmail.com@attacker.com
victim@attacker.com@gmail.com
SQL Injection
In email field
Insert Statement | Modify password of existing object/user To do so you should try to create a new object named as the "master object" (probably admin in case of users) modifying something:
Create user named: AdMIn (uppercase & lowercase letters)
Create a user named: admin=
SQL Truncation Attack (when ere is some kind of length limit in the username or email) --> Create user with name: admin [a lot of spaces] a
OAUTH Takeovers
[[OAUTH to ATO]]
SAML Vulnerabilities
Change email Feature
More Checks
Password Reset Takeover
Password Reset Token Leak Via Referrer
Request password reset to your email address
Click on the password reset link
Donβt change password
Click any 3rd party websites(eg: Facebook, twitter)
Intercept the request in Burp Suite proxy
Check if the referrer header is leaking password reset token.
Password Reset Poisoning
[[Host Header Injection]]
Intercept the password reset request in Burp Suite
Add or edit the following headers in Burp Suite :
Host: attacker.com
,X-Forwarded-Host: attacker.com
Forward the request with the modified header
http POST https://example.com/reset.php HTTP/1.1 Accept: */* Content-Type: application/json Host: attacker.com
Look for a password reset URL based on the host header like :
https://attacker.com/reset-password.php?token=TOKEN
Weak Password Reset Token
The password reset token should be randomly generated and unique every time. Try to determine if the token expire or if itβs always the same, in some cases the generation algorithm is weak and can be guessed. The following variables might be used by the algorithm.
Password Reset Via Username Collision
Register on the system with a username identical to the victimβs username, but with white spaces inserted before and/or after the username. e.g:
"admin "
Request a password reset with your malicious username.
Use the token sent to your email and reset the victim password.
Connect to the victim account with the new password.
Leaking Sensitive Info in Response
Steps(For Registration):
Steps (For password reset):
IDOR on API Parameters
Attacker have to login with their account and go to the Change password feature.
Start the Burp Suite and Intercept the request
Send it to the repeater tab and edit the parameters : User ID/email
powershell POST /api/changepass [...] ("form": {"email":"victim@email.com","password":"securepwd"})
XSS to ATO
[[HowToHunt-master/XSS/Xss]]
Find an XSS inside the application or a subdomain if the cookies are scoped to the parent domain :
*.domain.com
Leak the current sessions cookie
Authenticate as the user using the cookie
CSRF to ATO
[[HowToHunt-master/CSRF/CSRF]]
Change Password function.
Email change
Change Security Question
Create a payload for the CSRF, e.g: βHTML form with auto submit for a password changeβ
Send the payload
ATO via JWT
Using MFA/OTP issues
Authentication Bypass Via Response Manipulation
[[Authentication Bugs]]
SSRF to ATO
https://infosecwriteups.com/hubspot-full-account-takeover-in-bug-bounty-4e2047914ab5
Remote session Fixation to ATO
https://hackerone.com/reports/423136
Last updated