Broken Authentication
User Enumeration
Using Nmap (Replace target.com and port with your target)
nmap -p <port> --script http-enum-users.nse target.comUsing Wfuzz (Replace USERNAME_LIST with a wordlist)
wfuzz -c -z file,USERNAME_LIST -w target.com/login?username=FUZZBrute-Forcing Passwords
Using Hydra (Replace username, password_list, and target)
hydra -l username -P password_list target.com http-post-form "/login.php:username=^USER^&password=^PASS^:Invalid username or password"Using Hashcat (For Offline Password Cracking)
hashcat -m <hash_type> <hash_file> <wordlist>Brute-Forcing Password Reset Tokens
Using Wfuzz (Replace TOKEN_LIST)
wfuzz -c -z file,TOKEN_LIST target.com/reset?token=FUZZBrute-Forcing 2FA Codes
Using a Custom Script (Python Example)
Bypassing Brute-Force Protection (X-Forwarded-For)
Using Curl (Modify Headers)
Session Attacks
Brute-Forcing Cookies (Using Wfuzz, Very Time Consuming)
Example of Session Fixation
Additional Examples
Nmap Scan
Directory Brute Force
SQLMap Scan
Nikto Scan
Burp Suite Intruder Attack for Fuzzing
Categories of Authentication
Knowledge
Ownership
Inherence
Brute-Force Attacks
User Enumeration
Brute-Forcing Passwords
Brute-Forcing Password Reset Tokens
Brute-Forcing 2FA Codes
Bypassing Brute-Force Protection
Rate Limit
CAPTCHAs
Password Attacks
Default Credentials
Vulnerable Password Reset
Authentication Bypasses
Accessing Protected Pages Directly
Manipulating HTTP Parameters
Session Attacks
Brute-Forcing Cookies with Insufficient Entropy
Session Fixation
Improper Session Timeout
Additional Considerations
Last updated