hacktricks/pentesting-web/reset-password.md

164 lines
9.7 KiB
Markdown

# Bajpasovanje resetovanja/zaboravljene lozinke
<details>
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Drugi načini podrške HackTricks-u:
* Ako želite da vidite svoju **kompaniju reklamiranu na HackTricks-u** ili **preuzmete HackTricks u PDF formatu** proverite [**PLANOVE ZA PRIJAVU**](https://github.com/sponsors/carlospolop)!
* Nabavite [**zvanični PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Otkrijte [**The PEASS Family**](https://opensea.io/collection/the-peass-family), našu kolekciju ekskluzivnih [**NFT-ova**](https://opensea.io/collection/the-peass-family)
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitteru** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Podelite svoje hakovanje trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
<figure><img src="../.gitbook/assets/image (377).png" alt=""><figcaption></figcaption></figure>
Pridružite se [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) serveru kako biste komunicirali sa iskusnim hakerima i lovcima na bagove!
**Hakerski uvidi**\
Uključite se u sadržaj koji istražuje uzbuđenje i izazove hakovanja
**Vesti o hakovanju u realnom vremenu**\
Budite u toku sa brzim svetom hakovanja kroz vesti i uvide u realnom vremenu
**Najnovije najave**\
Budite informisani o najnovijim pokretanjima nagradnih lova na bagove i bitnim ažuriranjima platformi
**Pridružite nam se na** [**Discord-u**](https://discord.com/invite/N3FrSbmwdy) i počnite da sarađujete sa vrhunskim hakerima danas!
## **Curenje tokena za resetovanje lozinke putem Referrer-a**
* HTTP referer zaglavlje može otkriti token za resetovanje lozinke ako je uključen u URL. Ovo može da se desi kada korisnik klikne na link treće strane nakon što je zatražio resetovanje lozinke.
* **Utjecaj**: Potencijalno preuzimanje naloga putem CSRF (Cross-Site Request Forgery) napada.
* **Reference**:
* [HackerOne Izveštaj 342693](https://hackerone.com/reports/342693)
* [HackerOne Izveštaj 272379](https://hackerone.com/reports/272379)
* [Članak o Curenju Tokena za Resetovanje Lozinke](https://medium.com/@rubiojhayz1234/toyotas-password-reset-token-and-email-address-leak-via-referer-header-b0ede6507c6a)
## **Trovanje resetovanja lozinke**
* Napadači mogu manipulisati Host zaglavlje tokom zahteva za resetovanje lozinke kako bi usmerili reset link ka zlonamernom sajtu.
* **Popravka**: Koristite `$_SERVER['SERVER_NAME']` za konstruisanje URL-ova za resetovanje lozinke umesto `$_SERVER['HTTP_HOST']`.
* **Utjecaj**: Dovodi do potencijalnog preuzimanja naloga curenjem tokena za resetovanje napadačima.
* **Koraci za ublažavanje**:
* Validirajte Host zaglavlje protiv bele liste dozvoljenih domena.
* Koristite sigurne, serverske metode za generisanje apsolutnih URL-ova.
* **Reference**:
* [Acunetix Članak o Trovanju Resetovanja Lozinke](https://www.acunetix.com/blog/articles/password-reset-poisoning/)
## **Resetovanje lozinke manipulacijom parametra e-pošte**
* Napadači mogu manipulisati zahtev za resetovanje lozinke dodavanjem dodatnih parametara e-pošte kako bi preusmerili reset link.
* **Koraci za ublažavanje**:
* Pravilno parsirajte i validirajte parametre e-pošte na serverskoj strani.
* Koristite pripremljene izjave ili parametrizovane upite kako biste sprečili napade ubacivanjem.
* **Reference**:
* [Readme.com Preuzimanje naloga](https://medium.com/@0xankush/readme-com-account-takeover-bugbounty-fulldisclosure-a36ddbe915be)
## **Menjanje e-pošte i lozinke bilo kog korisnika putem API parametara**
* Napadači mogu izmeniti parametre e-pošte i lozinke u API zahtevima kako bi promenili podatke naloga.
* **Koraci za ublažavanje**:
* Osigurajte strogu validaciju parametara i provere autentifikacije.
* Implementirajte robustno beleženje i praćenje kako biste otkrili i odgovorili na sumnjive aktivnosti.
* **Reference**:
* [Potpuno preuzimanje naloga putem manipulacije API parametrima](https://medium.com/@adeshkolte/full-account-takeover-changing-email-and-password-of-any-user-through-api-parameters-3d527ab27240)
## **Nedostatak ograničenja brzine: Email bombardovanje**
* Nedostatak ograničenja brzine na zahtevima za resetovanje lozinke može dovesti do email bombardovanja, preplavljujući korisnika reset email-ovima.
* **Koraci za ublažavanje**:
* Implementirajte ograničenje brzine na osnovu IP adrese ili korisničkog naloga.
* Koristite CAPTCHA izazove kako biste sprečili automatizovanu zloupotrebu.
* **Reference**:
* [HackerOne Izveštaj 280534](https://hackerone.com/reports/280534)
## **Saznajte kako se generiše token za resetovanje lozinke**
* Razumevanje obrasca ili metode iza generisanja tokena može dovesti do predviđanja ili pokušaja brute-force napada na tokene.
* **Koraci za ublažavanje**:
* Koristite jake, kriptografske metode za generisanje tokena.
* Osigurajte dovoljnu slučajnost i dužinu kako biste sprečili predvidljivost.
* **Alati**: Koristite Burp Sequencer za analizu slučajnosti tokena.
## **Pogodan GUID**
* Ako su GUID-ovi (npr. verzija 1) pogodni ili predvidljivi, napadači ih mogu brute-force-ovati kako bi generisali validne reset tokene.
* **Koraci za ublažavanje**:
* Koristite GUID verziju 4 za slučajnost ili implementirajte dodatne sigurnosne mere za druge verzije.
* **Alati**: Koristite [guidtool](https://github.com/intruder-io/guidtool) za analizu i generisanje GUID-ova.
## **Manipulacija odgovorom: Zamena lošeg odgovora dobrim**
* Manipulisanje HTTP odgovora kako bi se zaobišle greške ili ograničenja.
* **Koraci za ublažavanje**:
* Implementirajte provere na serverskoj strani kako biste osigurali integritet odgovora.
* Koristite sigurne komunikacione kanale poput HTTPS-a kako biste sprečili napade čoveka u sredini.
* **Reference**:
* [Kritičan Bug na Live Događaju Bug Bounty-a](https://medium.com/@innocenthacker/how-i-found-the-most-critical-bug-in-live-bug-bounty-event-7a88b3aa97b3)
## **Korišćenje isteklog tokena**
* Testiranje da li istekli tokeni i dalje mogu biti korišćeni za resetovanje lozinke.
* **Koraci za ublažavanje**:
* Implementirajte stroge politike isteka tokena i validirajte istek tokena na serverskoj strani.
## **Brute Force napad na token za resetovanje lozinke**
* Pokušaj brute-force napada na reset token korišćenjem alata poput Burpsuite-a i IP-Rotator-a kako bi se zaobišla IP-bazirana ograničenja brzine.
* **Koraci za ublažavanje**:
* Implementirajte robustne mehanizme ograničenja brzine i zaključavanja naloga.
* Pratite sumnjive aktivnosti koje ukazuju na brute-force napade.
## **Pokušajte koristiti Vaš token**
* Testiranje da li reset token napadača može biti korišćen zajedno sa email-om žrtve.
* **Koraci za ublažavanje**:
* Osigurajte da su tokeni vezani za korisničku sesiju ili druge korisnički-specifične atribute.
## **Invalidacija sesije pri odjavi/resetovanju lozinke**
* Osiguravanje da su sesije invalidirane kada korisnik se odjavi ili resetuje lozinku.
* **Koraci za ublažavanje**:
* Implementirajte pravilno upravljanje sesijama, osiguravajući da su sve sesije invalidirane prilikom odjave ili resetovanja lozinke.
## **Invalidacija sesije pri odjavi/resetovanju lozinke**
* Reset tokeni bi trebalo da imaju vreme isteka nakon kojeg postaju nevažeći.
* **Koraci za ublažavanje**:
* Postavite razumno vreme isteka za reset tokene i strogo ga sprovedite na serverskoj strani.
## Reference
* [https://anugrahsr.github.io/posts/10-Password-reset-flaws/#10-try-using-your-token](https://anugrahsr.github.io/posts/10-Password-reset-flaws/#10-try-using-your-token)
<figure><img src="../.gitbook/assets/image (377).png" alt=""><figcaption></figcaption></figure>
Pridružite se [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) serveru kako biste komunicirali sa iskusnim hakerima i lovcima na bagove!
**Hakerski uvidi**\
Uključite se u sadržaj koji istražuje uzbuđenje i izazove hakovanja
**Vesti o hakovanju u realnom vremenu**\
Budite u toku sa brzim svetom hakovanja kroz vesti i uvide u realnom vremenu
**Poslednje najave**\
Budite informisani o najnovijim pokretanjima nagradnih programa za pronalaženje bagova i ključnim ažuriranjima platforme
**Pridružite nam se na** [**Discord-u**](https://discord.com/invite/N3FrSbmwdy) i počnite da sarađujete sa vrhunskim hakerima danas!
<details>
<summary><strong>Naučite hakovanje AWS-a od nule do heroja sa</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Drugi načini podrške HackTricks-u:
* Ako želite da vidite svoju **kompaniju reklamiranu na HackTricks-u** ili **preuzmete HackTricks u PDF formatu** proverite [**PLANOVE ZA PRIJAVU**](https://github.com/sponsors/carlospolop)!
* Nabavite [**zvanični PEASS & HackTricks swag**](https://peass.creator-spring.com)
* Otkrijte [**The PEASS Family**](https://opensea.io/collection/the-peass-family), našu kolekciju ekskluzivnih [**NFT-ova**](https://opensea.io/collection/the-peass-family)
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili nas **pratite** na **Twitter-u** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Podelite svoje hakovanje trikova slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>