Account Takeover

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Authorization Issue

Treba pokušati promeniti email naloga i pažljivo ispitati proces potvrde. Ako se utvrdi da je slab, email treba promeniti na onaj ciljne žrtve i potom potvrditi.

Unicode Normalization Issue

  1. Nalog ciljne žrtve victim@gmail.com
  2. Treba kreirati nalog koristeći Unicode\
    na primer: vićtim@gmail.com

As explained in this talk, the previous attack could also be done abusing third party identity providers:

  • Napraviti nalog kod provajdera identiteta treće strane sa sličnim emailom kao kod žrtve koristeći neki unicode karakter (vićtim@company.com).
  • Provajder treće strane ne bi trebalo da verifikuje email
  • Ako provajder identiteta verifikuje email, možda možete napasti deo domene kao: victim@ćompany.com i registrovati tu domenu i nadati se da provajder identiteta generiše ascii verziju domene dok platforma žrtve normalizuje ime domene.
  • Login via this identity provider in the victim platform who should normalize the unicode character and allow you to access the victim account.

For further details, refer to the document on Unicode Normalization:

Unicode Normalization

Reusing Reset Token

Ako ciljni sistem dozvoljava ponovnu upotrebu reset linka, treba pokušati pronaći više reset linkova koristeći alate kao što su gau, wayback, ili scan.io.

Pre Account Takeover

  1. Email žrtve treba iskoristiti za registraciju na platformi i postaviti lozinku (treba pokušati potvrditi nalog, iako nedostatak pristupa žrtvinim emailovima može to onemogućiti).
  2. Treba sačekati da se žrtva registruje koristeći OAuth i potvrdi nalog.
  3. Nadate se da će obična registracija biti potvrđena, što bi omogućilo pristup žrtvinom nalogu.

CORS Misconfiguration to Account Takeover

Ako stranica sadrži CORS misconfigurations, možda ćete moći ukrasti osetljive informacije od korisnika da biste takeover his account ili ga naterali da promeni auth informacije u istu svrhu:

CORS - Misconfigurations & Bypass

Csrf to Account Takeover

Ako je stranica ranjiva na CSRF možda ćete moći naterati korisnika da promeni svoju lozinku, email ili autentifikaciju kako biste potom mogli pristupiti nalogu:

CSRF (Cross Site Request Forgery)

XSS to Account Takeover

Ako nađete XSS u aplikaciji, možda ćete moći ukrasti cookies, local storage, ili informacije sa web stranice koje bi vam omogućile takeover the account:

XSS (Cross Site Scripting)

Same Origin + Cookies

Ako nađete ograničeni XSS ili subdomain take over, možete igrati sa cookies-ima (fixating them for example) kako biste pokušali kompromitovati žrtvin nalog:

Cookies Hacking

Attacking Password Reset Mechanism

Reset/Forgotten Password Bypass

Security-question resets that trust client-supplied usernames

If an “update security questions” flow takes a username parameter even though the caller is already authenticated, you can overwrite any account’s recovery data (including admins) because the backend typically runs UPDATE ... WHERE user_name = ? with your untrusted value. The pattern is:

  1. Prijavite se sa privremenim korisnikom i snimite session cookie.
  2. Pošaljite korisničko ime žrtve plus nove odgovore putem formulara za reset.
  3. Odmah se autentifikujte kroz security-question login endpoint koristeći odgovore koje ste upravo ubacili da biste nasledili privilegije žrtve.
POST /reset.php HTTP/1.1
Host: file.era.htb
Cookie: PHPSESSID=<low-priv>
Content-Type: application/x-www-form-urlencoded

username=admin_ef01cab31aa&new_answer1=A&new_answer2=B&new_answer3=C

Anything gated by the victim’s $_SESSION context (admin dashboards, dangerous stream-wrapper features, etc.) is now exposed without touching the real answers.

Enumerisana korisnička imena mogu se potom ciljati preko overwrite technique iznad ili ponovo koristiti protiv pomoćnih servisa (FTP/SSH password spraying).

Response Manipulation

Ako se authentication response može reducirati na jednostavan boolean — pokušajte promeniti false u true i vidite da li dobijate pristup.

OAuth to Account takeover

OAuth to Account takeover

Host Header Injection

  1. The Host header se menja nakon iniciranja zahteva za reset lozinke.
  2. X-Forwarded-For proxy header se menja u attacker.com.
  3. Host, Referrer, i Origin headers se istovremeno menjaju u attacker.com.
  4. Nakon iniciranja password reset i zatim opcije za resend mail, koriste se sve tri gore pomenute metode.

Response Manipulation

  1. Code Manipulation: status code se menja u 200 OK.
  2. Code and Body Manipulation:
  • status code se menja u 200 OK.
  • response body se menja u {"success":true} ili u prazan objekat {}.

Ove manipulation tehnike su efikasne u scenarijima gde se JSON koristi za prenos i prijem podataka.

Promena email-a trenutne sesije

Iz this report:

  • Napadač zahteva promenu svog email-a na novi
  • Napadač prima link za potvrdu promene email-a
  • Napadač pošalje žrtvi taj link da on klikne
  • Žrtvin email se menja na onaj koji je naveo napadač
  • Napad može da povrati lozinku i preuzme nalog

Ovo se takođe dogodilo u this report.

Bypass email verification for Account Takeover

  • Napadač se prijavi sa attacker@test.com i verifikuje email prilikom signup-a.
  • Napadač menja verifikovani email na victim@test.com (nema sekundarne verifikacije pri promeni email-a)
  • Sada sajt dozvoljava victim@test.com da se prijavi i time smo zaobišli email verification žrtvinog korisnika.

Old Cookies

Kao što je objašnjeno in this post, bilo je moguće login-ovati se na nalog, sačuvati cookies kao authenticated user, logout-ovati se, i zatim se ponovo login-ovati.
Sa novim login-om, iako su mogli biti generisani drugačiji cookies, stari su ponovo počeli da rade.

References

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks