hacktricks/pentesting-web/2fa-bypass.md

13 KiB

2FA/MFA/OTP Bypass

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Enhanced Two-Factor Authentication Bypass Techniques

Direct Endpoint Access

2FA рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрдЧрд▓реЗ рдПрдВрдбрдкреЙрдЗрдВрдЯ рддрдХ рд╕реАрдзреЗ рдкрд╣реБрдВрдЪреЗрдВ, рдкрде рдЬрд╛рдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдпрджрд┐ рдЕрд╕рдлрд▓ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ Referrer header рдХреЛ 2FA рд╕рддреНрдпрд╛рдкрди рдкреГрд╖реНрда рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХреА рдирдХрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓реЗрдВред

Token Reuse

рдЦрд╛рддреЗ рдХреЗ рднреАрддрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЯреЛрдХрди рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкреНрд░рднрд╛рд╡реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

Utilization of Unused Tokens

рдХрд┐рд╕реА рдХреЗ рдЕрдкрдиреЗ рдЦрд╛рддреЗ рд╕реЗ рдПрдХ рдЯреЛрдХрди рдирд┐рдХрд╛рд▓рдХрд░ рджреВрд╕рд░реЗ рдЦрд╛рддреЗ рдореЗрдВ 2FA рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Exposure of Token

рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЯреЛрдХрди рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИред

рдЦрд╛рддреЗ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдкрд░ рднреЗрдЬреЗ рдЧрдП рдИрдореЗрд▓ рд╕рддреНрдпрд╛рдкрди рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ 2FA рдХреЗ рдмрд┐рдирд╛ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдкреЛрд╕реНрдЯ рдореЗрдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

Session Manipulation

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдФрд░ рдПрдХ рдкреАрдбрд╝рд┐рдд рдХреЗ рдЦрд╛рддреЗ рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рд╢реБрд░реВ рдХрд░рдирд╛, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЦрд╛рддреЗ рдХреЗ рд▓рд┐рдП 2FA рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ рдмрд┐рдирд╛ рдЖрдЧреЗ рдмрдврд╝реЗ, рдкреАрдбрд╝рд┐рдд рдХреЗ рдЦрд╛рддреЗ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдореЗрдВ рдЕрдЧрд▓реЗ рдЪрд░рдг рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдмреИрдХрдПрдВрдб рд╕рддреНрд░ рдкреНрд░рдмрдВрдзрди рд╕реАрдорд╛рдУрдВ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддреЗ рд╣реБрдПред

Password Reset Mechanism

рдкрд╛рд╕рд╡рд░реНрдб рд░реАрд╕реЗрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛, рдЬреЛ рд░реАрд╕реЗрдЯ рдХреЗ рдмрд╛рдж рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд▓реЙрдЧ рдЗрди рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдПрдХ рд╣реА рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдИ рд░реАрд╕реЗрдЯ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред рдирдП рд░реАрд╕реЗрдЯ рдХрд┐рдП рдЧрдП рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рд╕рд╛рде рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛ 2FA рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

OAuth Platform Compromise

рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп OAuth рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (рдЬреИрд╕реЗ, Google, Facebook) рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЦрд╛рддреЗ рд╕реЗ рд╕рдордЭреМрддрд╛ рдХрд░рдирд╛ 2FA рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдорд╛рд░реНрдЧ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

Brute Force Attacks

Rate Limit Absence

рдХреЛрдб рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдХреЛрдИ рд╕реАрдорд╛ рди рд╣реЛрдиреЗ рд╕реЗ рдмреНрд░реВрдЯ рдлреЛрд░реНрд╕ рд╣рдорд▓реЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕рдВрднрд╛рд╡рд┐рдд рдЪреБрдкреНрдкреА рджрд░ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

Slow Brute Force

рдПрдХ рдзреАрдореА рдмреНрд░реВрдЯ рдлреЛрд░реНрд╕ рд╣рдорд▓рд╛ рддрдм рд╕рдВрднрд╡ рд╣реИ рдЬрдм рдкреНрд░рд╡рд╛рд╣ рджрд░ рд╕реАрдорд╛рдПрдБ рдореМрдЬреВрдж рд╣реЛрдВ рдмрд┐рдирд╛ рдПрдХ рд╕рдордЧреНрд░ рджрд░ рд╕реАрдорд╛ рдХреЗред

Code Resend Limit Reset

рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рднреЗрдЬрдиреЗ рд╕реЗ рджрд░ рд╕реАрдорд╛ рд░реАрд╕реЗрдЯ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдирд┐рд░рдВрддрд░ рдмреНрд░реВрдЯ рдлреЛрд░реНрд╕ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдорд┐рд▓рддреА рд╣реИред

Client-Side Rate Limit Circumvention

рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб рджрд░ рд╕реАрдорд╛рдУрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг рджреЗрддрд╛ рд╣реИред

Internal Actions Lack Rate Limit

рджрд░ рд╕реАрдорд╛рдПрдБ рд▓реЙрдЧрд┐рди рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рд░рдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреА рд╣реИрдВ рд▓реЗрдХрд┐рди рдЖрдВрддрд░рд┐рдХ рдЦрд╛рддрд╛ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдирд╣реАрдВред

SMS Code Resend Costs

SMS рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЛрдбреЛрдВ рдХреЛ рдЕрддреНрдпрдзрд┐рдХ рдкреБрдирдГ рднреЗрдЬрдиреЗ рд╕реЗ рдХрдВрдкрдиреА рдкрд░ рд▓рд╛рдЧрдд рдЖрддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ 2FA рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

Infinite OTP Regeneration

рд╕рд░рд▓ рдХреЛрдб рдХреЗ рд╕рд╛рде рдЕрдВрддрд╣реАрди OTP рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рдЫреЛрдЯреЗ рдХреЛрдб рд╕реЗрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкреНрд░рдпрд╛рд╕ рдХрд░рдХреЗ рдмреНрд░реВрдЯ рдлреЛрд░реНрд╕ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

Race Condition Exploitation

2FA рдмрд╛рдпрдкрд╛рд╕ рдХреЗ рд▓рд┐рдП рд░реЗрд╕ рдХрдВрдбреАрд╢рдВрд╕ рдХрд╛ рд╢реЛрд╖рдг рдПрдХ рд╡рд┐рд╢реЗрд╖ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

CSRF/Clickjacking Vulnerabilities

CSRF рдпрд╛ Clickjacking рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ 2FA рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд░рдгрдиреАрддрд┐ рд╣реИред

"Remember Me" Feature Exploits

"рдпрд╛рдж рд░рдЦреЗрдВ" рдХреБрдХреА рдорд╛рди рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

IP Address Impersonation

X-Forwarded-For рд╣реЗрдбрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреАрдбрд╝рд┐рдд рдХреЗ IP рдкрддреЗ рдХреА рдирдХрд▓ рдХрд░рдирд╛ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

Utilizing Older Versions

Subdomains

рдЙрдкрдбреЛрдореЗрди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ 2FA рд╕рдорд░реНрдерди рдХреА рдХрдореА рд╣реИ рдпрд╛ рдХрдордЬреЛрд░ 2FA рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

API Endpoints

рдкреБрд░рд╛рдиреЗ API рд╕рдВрд╕реНрдХрд░рдг, рдЬреЛ /v*/ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрде рджреНрд╡рд╛рд░рд╛ рдЗрдВрдЧрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, 2FA рдмрд╛рдпрдкрд╛рд╕ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

Handling of Previous Sessions

2FA рд╕рдХреНрд░рд┐рдпрдг рдкрд░ рдореМрдЬреВрджрд╛ рд╕рддреНрд░реЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдордЭреМрддрд╛ рдХрд┐рдП рдЧрдП рд╕рддреНрд░реЛрдВ рд╕реЗ рдЕрдирдзрд┐рдХреГрдд рдкрд╣реБрдВрдЪ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЦрд╛рддреЛрдВ рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

Access Control Flaws with Backup Codes

2FA рд╕рдХреНрд░рд┐рдпрдг рдкрд░ рдмреИрдХрдЕрдк рдХреЛрдбреЛрдВ рдХрд╛ рддрд╛рддреНрдХрд╛рд▓рд┐рдХ рдирд┐рд░реНрдорд╛рдг рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рдЕрдирдзрд┐рдХреГрдд рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ CORS рдЧрд▓рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди/XSS рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде, рдПрдХ рдЬреЛрдЦрд┐рдо рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИред

Information Disclosure on 2FA Page

2FA рд╕рддреНрдпрд╛рдкрди рдкреГрд╖реНрда рдкрд░ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ (рдЬреИрд╕реЗ, рдлреЛрди рдирдВрдмрд░) рдПрдХ рдЪрд┐рдВрддрд╛ рдХрд╛ рд╡рд┐рд╖рдп рд╣реИред

Password Reset Disabling 2FA

рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЬреЛ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рдмрд╛рдпрдкрд╛рд╕ рд╡рд┐рдзрд┐ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИ, рдЙрд╕рдореЗрдВ рдЦрд╛рддрд╛ рдирд┐рд░реНрдорд╛рдг, 2FA рд╕рдХреНрд░рд┐рдпрдг, рдкрд╛рд╕рд╡рд░реНрдб рд░реАрд╕реЗрдЯ, рдФрд░ 2FA рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдмрд╛рдж рдореЗрдВ рд▓реЙрдЧрд┐рди рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред

Decoy Requests

рдмреНрд░реВрдЯ рдлреЛрд░реНрд╕ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЛ рдЕрд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдпрд╛ рджрд░ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреА рддрдВрддреНрд░реЛрдВ рдХреЛ рднрдЯрдХрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдХреЛрдп рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╛рдпрдкрд╛рд╕ рд░рдгрдиреАрддрд┐рдпреЛрдВ рдореЗрдВ рдПрдХ рдФрд░ рдкрд░рдд рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдРрд╕реЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдпреЛрдВ рдФрд░ рджрд░ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░реЛрдВ рдХреА рд╕реВрдХреНрд╖реНрдо рд╕рдордЭ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

OTP Construction errors

рдпрджрд┐ OTP рдЙрд╕ рдбреЗрдЯрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░рдЦрддрд╛ рд╣реИ рдпрд╛ рдЬреЛ OTP рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рднреЗрдЬрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕реЗ рднреА рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдмрд╛рдпрдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

References

P

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}