Reset/Forgotten Password Bypass
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Join HackenProof Discord server to communicate with experienced hackers and bug bounty hunters!
Hacking Insights Engage with content that delves into the thrill and challenges of hacking
Real-Time Hack News Keep up-to-date with fast-paced hacking world through real-time news and insights
Latest Announcements Stay informed with the newest bug bounties launching and crucial platform updates
Join us on Discord and start collaborating with top hackers today!
Nagłówek HTTP referer może ujawniać token resetowania hasła, jeśli jest zawarty w URL. Może to nastąpić, gdy użytkownik kliknie link do strony trzeciej po zażądaniu resetowania hasła.
Wpływ: Potencjalne przejęcie konta za pomocą ataków Cross-Site Request Forgery (CSRF).
Eksploatacja: Aby sprawdzić, czy token resetowania hasła wycieka w nagłówku referer, zażądaj resetowania hasła na swój adres e-mail i kliknij link resetujący. Nie zmieniaj hasła od razu. Zamiast tego przejdź do strony trzeciej (takiej jak Facebook lub Twitter), jednocześnie przechwytując żądania za pomocą Burp Suite. Sprawdź żądania, aby zobaczyć, czy nagłówek referer zawiera token resetowania hasła, ponieważ może to ujawnić wrażliwe informacje osobom trzecim.
Referencje:
Atakujący mogą manipulować nagłówkiem Host podczas żądań resetowania hasła, aby skierować link resetujący do złośliwej witryny.
Wpływ: Prowadzi do potencjalnego przejęcia konta przez ujawnienie tokenów resetowania atakującym.
Kroki łagodzące:
Waliduj nagłówek Host w porównaniu do białej listy dozwolonych domen.
Używaj bezpiecznych, serwerowych metod do generowania absolutnych URL.
Poprawka: Użyj $_SERVER['SERVER_NAME']
do konstruowania URL resetowania hasła zamiast $_SERVER['HTTP_HOST']
.
Referencje:
Atakujący mogą manipulować żądaniem resetowania hasła, dodając dodatkowe parametry e-mail, aby przekierować link resetujący.
Dodaj e-mail atakującego jako drugi parametr używając &
Dodaj email atakującego jako drugi parametr używając %20
Dodaj email atakującego jako drugi parametr używając |
Dodaj email atakującego jako drugi parametr, używając cc
Dodaj email atakującego jako drugi parametr używając bcc
Dodaj email atakującego jako drugi parametr używając ,
Dodaj email atakującego jako drugi parametr w tablicy json
Kroki łagodzenia:
Prawidłowo analizuj i waliduj parametry e-mailowe po stronie serwera.
Używaj przygotowanych instrukcji lub zapytań z parametrami, aby zapobiec atakom typu injection.
Referencje:
Atakujący mogą modyfikować parametry e-maila i hasła w żądaniach API, aby zmienić dane logowania do konta.
Kroki łagodzenia:
Zapewnij ścisłą walidację parametrów i kontrole uwierzytelniania.
Wprowadź solidne logowanie i monitorowanie, aby wykrywać i reagować na podejrzane działania.
Referencje:
Brak ograniczeń szybkości w żądaniach resetowania hasła może prowadzić do bombardowania e-mailem, przytłaczając użytkownika wiadomościami o resetowaniu.
Kroki łagodzenia:
Wprowadź ograniczenia szybkości na podstawie adresu IP lub konta użytkownika.
Użyj wyzwań CAPTCHA, aby zapobiec automatycznemu nadużywaniu.
Referencje:
Zrozumienie wzoru lub metody generowania tokenów może prowadzić do przewidywania lub łamania tokenów. Niektóre opcje:
Na podstawie znacznika czasu
Na podstawie UserID
Na podstawie e-maila 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, aby analizować losowość tokenów.
Jeśli UUID (wersja 1) są przewidywalne, atakujący mogą je łamać, aby generować ważne tokeny resetowania. Sprawdź:
Kroki łagodzenia:
Użyj GUID wersji 4 dla losowości lub wprowadź dodatkowe środki bezpieczeństwa dla innych wersji.
Narzędzia: Użyj guidtool do analizy i generowania GUID-ów.
Manipulowanie odpowiedziami HTTP, aby obejść komunikaty o błędach lub ograniczenia.
Kroki łagodzenia:
Wprowadź kontrole po stronie serwera, aby zapewnić integralność odpowiedzi.
Użyj bezpiecznych kanałów komunikacyjnych, takich jak HTTPS, aby zapobiec atakom typu man-in-the-middle.
Referencje:
Testowanie, czy wygasłe tokeny mogą być nadal używane do resetowania hasła.
Kroki łagodzenia:
Wprowadź ścisłe zasady wygasania tokenów i waliduj wygasanie tokenów po stronie serwera.
Próba złamania tokena resetowania za pomocą narzędzi takich jak Burpsuite i IP-Rotator, aby obejść ograniczenia szybkości oparte na IP.
Kroki łagodzenia:
Wprowadź solidne mechanizmy ograniczania szybkości i blokady konta.
Monitoruj podejrzane działania wskazujące na ataki brute-force.
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.
Zapewnienie, że sesje są unieważniane, gdy użytkownik się wylogowuje lub resetuje hasło.
Kroki łagodzenia:
Wprowadź odpowiednie zarządzanie sesjami, zapewniając, że wszystkie sesje są unieważniane po wylogowaniu lub resetowaniu 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.
Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hackerami i łowcami błędów!
Wgląd w hacking Zaangażuj się w treści, które zagłębiają się w emocje i wyzwania związane z hackingiem
Aktualności o hackingu w czasie rzeczywistym Bądź na bieżąco z dynamicznym światem hackingu dzięki aktualnym wiadomościom i wglądom
Najnowsze ogłoszenia Bądź na bieżąco z nowymi nagrodami za błędy oraz istotnymi aktualizacjami platformy
Dołącz do nas na Discord i zacznij współpracować z najlepszymi hackerami już dziś!
Ucz się i ćwicz hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)