Account Takeover
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)
Problem sa autorizacijom
Email naloga treba pokušati da se promeni, a proces potvrde mora biti ispitan. Ako se utvrdi da je slab, email treba promeniti na onaj koji pripada nameravanoj žrtvi i zatim potvrditi.
Problem sa Unicode normalizacijom
Nalog nameravane žrtve
victim@gmail.com
Treba kreirati nalog koristeći Unicode na primer:
vićtim@gmail.com
Kao što je objašnjeno u ovom predavanju, prethodni napad se takođe može izvesti zloupotrebom identitetskih provajdera trećih strana:
Kreirati nalog kod identitetskog provajdera treće strane sa sličnim emailom kao žrtva koristeći neki unicode karakter (
vićtim@company.com
).Provajder treće strane ne bi trebao da verifikuje email
Ako identitetski provajder verifikuje email, možda možete napasti deo domene kao što je:
victim@ćompany.com
i registrovati tu domenu i nadati se da identitetski provajder generiše ascii verziju domene dok platforma žrtve normalizuje naziv domene.Prijavite se putem ovog identitetskog provajdera na platformu žrtve koja bi trebala normalizovati unicode karakter i omogućiti vam pristup nalogu žrtve.
Za više detalja, pogledajte dokument o Unicode normalizaciji:
Unicode NormalizationPonovno korišćenje reset tokena
Ako ciljni sistem dozvoljava ponovno korišćenje linka za reset, treba uložiti napore da se pronađe više linkova za reset koristeći alate kao što su gau
, wayback
, ili scan.io
.
Pre preuzimanja naloga
Email žrtve treba koristiti za registraciju na platformi, a lozinka treba biti postavljena (pokušaj potvrde treba biti napravljen, iako nedostatak pristupa emailovima žrtve može učiniti ovo nemogućim).
Treba čekati dok žrtva ne registruje koristeći OAuth i potvrdi nalog.
Nadamo se da će redovna registracija biti potvrđena, omogućavajući pristup nalogu žrtve.
CORS pogrešna konfiguracija za preuzimanje naloga
Ako stranica sadrži CORS pogrešne konfiguracije, možda ćete moći da ukradete osetljive informacije od korisnika kako biste preuzeli njegov nalog ili ga naterali da promeni informacije o autentifikaciji u istu svrhu:
CORS - Misconfigurations & BypassCSRF za preuzimanje naloga
Ako je stranica ranjiva na CSRF, možda ćete moći da naterate korisnika da izmeni svoju lozinku, email ili autentifikaciju kako biste zatim mogli da mu pristupite:
CSRF (Cross Site Request Forgery)XSS za preuzimanje naloga
Ako pronađete XSS u aplikaciji, možda ćete moći da ukradete kolačiće, lokalnu memoriju ili informacije sa web stranice koje bi vam mogle omogućiti preuzimanje naloga:
XSS (Cross Site Scripting)Ista domena + Kolačići
Ako pronađete ograničen XSS ili preuzimanje poddomena, mogli biste se igrati sa kolačićima (fiksirajući ih na primer) kako biste pokušali da kompromitujete nalog žrtve:
Cookies HackingNapad na mehanizam resetovanja lozinke
Reset/Forgotten Password BypassManipulacija odgovorom
Ako se odgovor na autentifikaciju može smanjiti na jednostavnu boolean vrednost, samo pokušajte da promenite false u true i vidite da li dobijate bilo kakav pristup.
OAuth za preuzimanje naloga
OAuth to Account takeoverInjekcija Host zaglavlja
Host zaglavlje se menja nakon iniciranja zahteva za resetovanje lozinke.
X-Forwarded-For
proxy zaglavlje se menja uattacker.com
.Host, Referrer i Origin zaglavlja se istovremeno menjaju u
attacker.com
.Nakon iniciranja resetovanja lozinke i zatim odabira ponovnog slanja maila, koriste se sve tri prethodno navedene metode.
Manipulacija odgovorom
Manipulacija kodom: Status kod se menja u
200 OK
.Manipulacija kodom i telom:
Status kod se menja u
200 OK
.Telo odgovora se menja u
{"success":true}
ili prazan objekat{}
.
Ove tehnike manipulacije su efikasne u scenarijima gde se JSON koristi za prenos i prijem podataka.
Promena emaila trenutne sesije
Iz ovog izveštaja:
Napadač traži da promeni svoj email na novi
Napadač dobija link za potvrdu promene emaila
Napadač šalje žrtvi link kako bi ga kliknula
Email žrtve se menja na onaj koji je naveo napadač
Napadač može povratiti lozinku i preuzeti nalog
Ovo se takođe dogodilo u ovom izveštaju.
Stari kolačići
Kao što je objašnjeno u ovom postu, bilo je moguće prijaviti se na nalog, sačuvati kolačiće kao autentifikovani korisnik, odjaviti se, a zatim se ponovo prijaviti. Sa novim prijavljivanjem, iako su možda generisani različiti kolačići, stari su ponovo počeli da rade.
Reference
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)
Last updated