User Registration

Check List

Methodology

Black Box

Punycode Email IDN Homograph Attack For Account Takeover

1

Register Normal Account Go to target signup page and create account with normal email like security@gmail.com Use Burp Collaborator domain as callback: security@gmail.com.bcrkly6yl8ke552nzjt7jtu52w8nwdk2.oastify.co Log in to validate account works, then logout

2

Generate Punycode Email Use Punycode generator (punycoder.com or custom script) to replace domain chars, "a" with "à" in gmail.com Result: security@gmàil.comsecurity@xn--gml-hoa.com.bcrkly6yl8ke552nzjt7jtu52w8nwdk2.oastify.com

3

Intercept Signup with Punycode Turn on Burp interception Attempt signup with Punycode email, intercept request and manually replace email field with Punycode version (browsers auto-encode, so modify manually) Forward request Check response for "Email already exists" (indicates normalization treats both as same, confirming vuln)

4

Trigger Password Reset with Punycode Go to forgot password page Intercept request, enter Punycode email: security@gmàil.com.bcrkly6yl8ke552nzjt7jtu52w8nwdk2.oastify.com Forward and monitor Burp Collaborator for SMTP callback with reset link

5

Reset and Takeover Copy reset link from Collaborator, open in browser and set new password Logout, then login with original normal email (security@gmail.com) and new password Access confirmed: account hijacked Advanced: Punycode in Username (Local-Part) Repeat steps but modify username part: signup with ṡecurity@gmail.com (Punycode: xn--security-7ca@gmail.com) Intercept/modify as before For reset, use normal username: security@gmail.com If callback received, reset and login with original full email for zero-click takeover Bonus: If 2FA enabled, register Punycode variant, setup attacker's 2FA, then use it to access victim's original email account via normalization flaw


A Punycode Path to Account Takeover

1

Navigate to the target website’s sign-up page

2

Register a new account using an email address you control, for example via Burp Collaborator

XYZ@gmail.com.<collaborator-domain>
3

Complete the registration process successfully

4

Log out of the account

5

Go to the Forgot Password / password reset page

6

Intercept the password reset request using Burp Suite

7

Modify the email domain in the request by replacing the ASCII character with a visually similar Unicode character (IDN homograph), for example

@gmail.com

to

@gmàil.com
8

Forward the modified request

9

Observe that the password reset email is sent to the attacker-controlled inbox (Burp Collaborator)

10

Open the password reset link received in the attacker inbox

11

Set a new password for the account

12

Log in using the new password

13

Confirm that full access to the victim account is obtained, resulting in account takeover


White Box

Cheat Sheet

Find Register Form

Create Script

Run Script

Last updated