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

181 lines
9.1 KiB
Markdown

# 2FA/MFA/OTP Bypass
{% hint style="success" %}
Učite i vežbajte AWS Hacking:<img src="../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../.gitbook/assets/arte.png" alt="" data-size="line">\
Učite i vežbajte GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Podržite HackTricks</summary>
* Proverite [**planove pretplate**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili **pratite** nas na **Twitteru** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podelite hakerske trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
{% endhint %}
### [WhiteIntel](https://whiteintel.io)
<figure><img src="../.gitbook/assets/image (1227).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) je **dark-web** pretraživač koji nudi **besplatne** funkcionalnosti za proveru da li je neka kompanija ili njeni klijenti **kompromitovani** od strane **stealer malwares**.
Njihov primarni cilj WhiteIntel-a je da se bori protiv preuzimanja naloga i ransomware napada koji proizlaze iz malvera koji krade informacije.
Možete proveriti njihovu veb stranicu i isprobati njihov pretraživač **besplatno** na:
{% embed url="https://whiteintel.io" %}
***
## **Tehnike za zaobilaženje poboljšane dvofaktorske autentifikacije**
### **Direktan pristup krajnjoj tački**
Da biste zaobišli 2FA, direktno pristupite sledećoj krajnjoj tački, poznavanje puta je ključno. Ako ne uspete, izmenite **Referrer header** da biste oponašali navigaciju sa stranice za verifikaciju 2FA.
### **Ponovna upotreba tokena**
Ponovno korišćenje prethodno korišćenih tokena za autentifikaciju unutar naloga može biti efikasno.
### **Korišćenje neiskorišćenih tokena**
Može se pokušati izvući token iz svog naloga kako bi se zaobišla 2FA u drugom nalogu.
### **Izlaganje tokena**
Istražite da li je token otkriven u odgovoru veb aplikacije.
### **Eksploatacija verifikacione veze**
Korišćenje **verifikacione veze za e-poštu poslate prilikom kreiranja naloga** može omogućiti pristup profilu bez 2FA, kao što je istaknuto u detaljnom [postu](https://srahulceh.medium.com/behind-the-scenes-of-a-security-bug-the-perils-of-2fa-cookie-generation-496d9519771b).
### **Manipulacija sesijama**
Pokretanje sesija za naloge korisnika i žrtve, i završavanje 2FA za nalog korisnika bez nastavka, omogućava pokušaj pristupa sledećem koraku u toku naloga žrtve, iskorišćavajući ograničenja upravljanja sesijama na backendu.
### **Mehanizam za resetovanje lozinke**
Istraživanje funkcije resetovanja lozinke, koja prijavljuje korisnika u aplikaciju nakon resetovanja, zbog njenog potencijala da omogući više resetovanja koristeći istu vezu je ključno. Prijavljivanje sa novim resetovanim podacima može zaobići 2FA.
### **Kompromitovanje OAuth platforme**
Kompromitovanje naloga korisnika na pouzdanoj **OAuth** platformi (npr. Google, Facebook) može ponuditi put za zaobilaženje 2FA.
### **Brute Force napadi**
#### **Odsustvo ograničenja brzine**
Nedostatak ograničenja na broj pokušaja koda omogućava brute force napade, iako treba razmotriti potencijalno tiho ograničavanje brzine.
#### **Spori brute force**
Spori brute force napad je izvodljiv gde postoje ograničenja brzine protoka bez sveobuhvatnog ograničenja brzine.
#### **Resetovanje ograničenja ponovnog slanja koda**
Ponovno slanje koda resetuje ograničenje brzine, olakšavajući nastavak pokušaja brute force.
#### **Zaobilaženje ograničenja brzine na klijentskoj strani**
Dokument detaljno opisuje tehnike za zaobilaženje ograničenja brzine na klijentskoj strani.
#### **Unutrašnje radnje bez ograničenja brzine**
Ograničenja brzine mogu zaštititi pokušaje prijavljivanja, ali ne i unutrašnje radnje naloga.
#### **Troškovi ponovnog slanja SMS kodova**
Prekomerno ponavljanje slanja kodova putem SMS-a donosi troškove kompaniji, iako ne zaobilazi 2FA.
#### **Beskonačna regeneracija OTP-a**
Besplatna generacija OTP-a sa jednostavnim kodovima omogućava brute force pokušaje ponovnog korišćenja malog skupa kodova.
### **Eksploatacija uslova trke**
Eksploatacija uslova trke za zaobilaženje 2FA može se naći u specifičnom dokumentu.
### **CSRF/Clickjacking ranjivosti**
Istraživanje CSRF ili Clickjacking ranjivosti za onemogućavanje 2FA je izvodljiva strategija.
### **Eksploatacije funkcije "Zapamti me"**
#### **Predvidljive vrednosti kolačića**
Pogađanje vrednosti kolačića "zapamti me" može zaobići ograničenja.
#### **Imitacija IP adrese**
Imitacija IP adrese žrtve putem **X-Forwarded-For** header-a može zaobići ograničenja.
### **Korišćenje starijih verzija**
#### **Poddomeni**
Testiranje poddomena može koristiti zastarele verzije koje nemaju podršku za 2FA ili sadrže ranjive implementacije 2FA.
#### **API krajnje tačke**
Starije verzije API-ja, označene sa /v\*/ putanjama, mogu biti ranjive na metode zaobilaženja 2FA.
### **Rukovanje prethodnim sesijama**
Prekidanje postojećih sesija prilikom aktivacije 2FA osigurava naloge od neovlašćenog pristupa iz kompromitovanih sesija.
### **Greške u pristupu kontrolama sa rezervnim kodovima**
Odmah generisanje i potencijalno neovlašćeno preuzimanje rezervnih kodova prilikom aktivacije 2FA, posebno sa CORS pogrešnim konfiguracijama/XSS ranjivostima, predstavlja rizik.
### **Otkrivanje informacija na 2FA stranici**
Otkrivanje osetljivih informacija (npr. broj telefona) na stranici za verifikaciju 2FA je zabrinjavajuće.
### **Resetovanje lozinke onemogućava 2FA**
Proces koji pokazuje potencijalnu metodu zaobilaženja uključuje kreiranje naloga, aktivaciju 2FA, resetovanje lozinke i naknadno prijavljivanje bez zahteva za 2FA.
### **Mamci zahtevi**
Korišćenje mamaca zahteva za prikrivanje pokušaja brute force ili obmanu mehanizama ograničenja brzine dodaje još jedan sloj strategijama zaobilaženja. Kreiranje takvih zahteva zahteva suptilno razumevanje bezbednosnih mera aplikacije i ponašanja ograničenja brzine.
### Greške u konstrukciji OTP-a
U slučaju da se OTP kreira na osnovu podataka koje korisnik već ima ili koji se šalju pre kreiranja OTP-a, moguće je da korisnik takođe generiše OTP i zaobiđe ga.
## Reference
* [https://medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35](https://github.com/carlospolop/hacktricks/blob/master/pentesting-web/%22https:/medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35%22/README.md)
* [https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718](https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718)
* [https://getpocket.com/read/aM7dap2bTo21bg6fRDAV2c5thng5T48b3f0Pd1geW2u186eafibdXj7aA78Ip116\_1d0f6ce59992222b0812b7cab19a4bce](https://getpocket.com/read/aM7dap2bTo21bg6fRDAV2c5thng5T48b3f0Pd1geW2u186eafibdXj7aA78Ip116\_1d0f6ce59992222b0812b7cab19a4bce)
### [WhiteIntel](https://whiteintel.io)
<figure><img src="../.gitbook/assets/image (1227).png" alt=""><figcaption></figcaption></figure>
[**WhiteIntel**](https://whiteintel.io) je **dark-web** pretraživač koji nudi **besplatne** funkcionalnosti za proveru da li je neka kompanija ili njeni klijenti **kompromitovani** od strane **stealer malwares**.
Njihov primarni cilj WhiteIntel-a je da se bori protiv preuzimanja naloga i ransomware napada koji proizlaze iz malvera koji krade informacije.
Možete proveriti njihovu veb stranicu i isprobati njihov pretraživač **besplatno** na:
{% embed url="https://whiteintel.io" %}
P
{% hint style="success" %}
Učite i vežbajte AWS Hacking:<img src="../.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="../.gitbook/assets/arte.png" alt="" data-size="line">\
Učite i vežbajte GCP Hacking: <img src="../.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="../.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Podržite HackTricks</summary>
* Proverite [**planove pretplate**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili **pratite** nas na **Twitteru** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podelite hakerske trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
{% endhint %}