8.1 KiB
Preuzimanje naloga
{% hint style="success" %}
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)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
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:
{% content-ref url="unicode-injection/unicode-normalization.md" %} unicode-normalization.md {% endcontent-ref %}
Ponovno 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:
{% content-ref url="cors-bypass.md" %} cors-bypass.md {% endcontent-ref %}
CSRF 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:
{% content-ref url="csrf-cross-site-request-forgery.md" %} csrf-cross-site-request-forgery.md {% endcontent-ref %}
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:
{% content-ref url="xss-cross-site-scripting/" %} xss-cross-site-scripting {% endcontent-ref %}
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:
{% content-ref url="hacking-with-cookies/" %} hacking-with-cookies {% endcontent-ref %}
Napad na mehanizam resetovanja lozinke
{% content-ref url="reset-password.md" %} reset-password.md {% endcontent-ref %}
Manipulacija 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
{% content-ref url="oauth-to-account-takeover.md" %} oauth-to-account-takeover.md {% endcontent-ref %}
Injekcija 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
- https://infosecwriteups.com/firing-8-account-takeover-methods-77e892099050
- https://dynnyd20.medium.com/one-click-account-take-over-e500929656ea
{% hint style="success" %}
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)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.