8.4 KiB
Przejęcie Konta
{% hint style="success" %}
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)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegram lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się sztuczkami hackingowymi, przesyłając PR do HackTricks i HackTricks Cloud repozytoriów github.
Problem z Autoryzacją
Należy spróbować zmienić adres e-mail konta, a proces potwierdzenia musi być zbadany. Jeśli okaże się słaby, adres e-mail powinien zostać zmieniony na adres zamierzonej ofiary, a następnie potwierdzony.
Problem z Normalizacją Unicode
- Konto zamierzonej ofiary
victim@gmail.com
- Należy utworzyć konto używając Unicode
na przykład:vićtim@gmail.com
Jak wyjaśniono w tej prezentacji, poprzedni atak można również przeprowadzić, nadużywając zewnętrznych dostawców tożsamości:
- Utwórz konto u zewnętrznego dostawcy tożsamości z podobnym adresem e-mail do ofiary, używając jakiegoś znaku unicode (
vićtim@company.com
). - Zewnętrzny dostawca nie powinien weryfikować adresu e-mail.
- Jeśli dostawca tożsamości weryfikuje adres e-mail, być może możesz zaatakować część domeny, na przykład:
victim@ćompany.com
i zarejestrować tę domenę, mając nadzieję, że dostawca tożsamości wygeneruje wersję ascii domeny, podczas gdy platforma ofiary znormalizuje nazwę domeny. - Zaloguj się za pośrednictwem tego dostawcy tożsamości na platformie ofiary, która powinna znormalizować znak unicode i pozwolić ci uzyskać dostęp do konta ofiary.
Aby uzyskać więcej szczegółów, zapoznaj się z dokumentem na temat Normalizacji Unicode:
{% content-ref url="unicode-injection/unicode-normalization.md" %} unicode-normalization.md {% endcontent-ref %}
Ponowne Użycie Tokena Resetowania
Jeśli system docelowy pozwala na ponowne użycie linku resetującego, należy podjąć wysiłki, aby znaleźć więcej linków resetujących przy użyciu narzędzi takich jak gau
, wayback
lub scan.io
.
Przed Przejęciem Konta
- E-mail ofiary powinien być użyty do rejestracji na platformie, a hasło powinno być ustawione (należy spróbować je potwierdzić, chociaż brak dostępu do e-maili ofiary może to uniemożliwić).
- Należy czekać, aż ofiara zarejestruje się za pomocą OAuth i potwierdzi konto.
- Mamy nadzieję, że standardowa rejestracja zostanie potwierdzona, co pozwoli na dostęp do konta ofiary.
Błąd Konfiguracji CORS do Przejęcia Konta
Jeśli strona zawiera błędy konfiguracji CORS, możesz być w stanie ukraść wrażliwe informacje od użytkownika, aby przejąć jego konto lub zmusić go do zmiany informacji uwierzytelniających w tym samym celu:
{% content-ref url="cors-bypass.md" %} cors-bypass.md {% endcontent-ref %}
CSRF do Przejęcia Konta
Jeśli strona jest podatna na CSRF, możesz być w stanie sprawić, że użytkownik zmodyfikuje swoje hasło, e-mail lub uwierzytelnienie, abyś mógł uzyskać do niego dostęp:
{% content-ref url="csrf-cross-site-request-forgery.md" %} csrf-cross-site-request-forgery.md {% endcontent-ref %}
XSS do Przejęcia Konta
Jeśli znajdziesz XSS w aplikacji, możesz być w stanie ukraść ciasteczka, lokalne przechowywanie lub informacje ze strony internetowej, które mogą pozwolić ci przejąć konto:
{% content-ref url="xss-cross-site-scripting/" %} xss-cross-site-scripting {% endcontent-ref %}
Ta Sama Pochodna + Ciasteczka
Jeśli znajdziesz ograniczone XSS lub przejęcie subdomeny, możesz manipulować ciasteczkami (na przykład je ustalając), aby spróbować skompromitować konto ofiary:
{% content-ref url="hacking-with-cookies/" %} hacking-with-cookies {% endcontent-ref %}
Atakowanie Mechanizmu Resetowania Hasła
{% content-ref url="reset-password.md" %} reset-password.md {% endcontent-ref %}
Manipulacja Odpowiedzią
Jeśli odpowiedź uwierzytelniająca może być zredukowana do prostego boolean, spróbuj zmienić false na true i zobacz, czy uzyskasz dostęp.
OAuth do Przejęcia Konta
{% content-ref url="oauth-to-account-takeover.md" %} oauth-to-account-takeover.md {% endcontent-ref %}
Wstrzyknięcie Nagłówka Host
- Nagłówek Host jest modyfikowany po zainicjowaniu żądania resetowania hasła.
- Nagłówek proxy
X-Forwarded-For
jest zmieniany naattacker.com
. - Nagłówki Host, Referrer i Origin są jednocześnie zmieniane na
attacker.com
. - Po zainicjowaniu resetowania hasła i wybraniu opcji ponownego wysłania maila, stosowane są wszystkie trzy powyższe metody.
Manipulacja Odpowiedzią
- Manipulacja Kodem: Kod statusu jest zmieniany na
200 OK
. - Manipulacja Kodem i Treścią:
- Kod statusu jest zmieniany na
200 OK
. - Treść odpowiedzi jest modyfikowana na
{"success":true}
lub pusty obiekt{}
.
Te techniki manipulacji są skuteczne w scenariuszach, w których JSON jest wykorzystywany do przesyłania i odbierania danych.
Zmiana e-maila bieżącej sesji
Z tego raportu:
- Napastnik prosi o zmianę swojego e-maila na nowy.
- Napastnik otrzymuje link do potwierdzenia zmiany e-maila.
- Napastnik wysyła ofierze link, aby kliknęła w niego.
- E-mail ofiary zostaje zmieniony na ten wskazany przez napastnika.
- Napastnik może odzyskać hasło i przejąć konto.
To również miało miejsce w tym raporcie.
Stare Ciasteczka
Jak wyjaśniono w tym poście, możliwe było zalogowanie się na konto, zapisanie ciasteczek jako uwierzytelniony użytkownik, wylogowanie się, a następnie ponowne zalogowanie.
Przy nowym logowaniu, chociaż mogą być generowane różne ciasteczka, stare zaczęły działać ponownie.
Referencje
- https://infosecwriteups.com/firing-8-account-takeover-methods-77e892099050
- https://dynnyd20.medium.com/one-click-account-take-over-e500929656ea
{% hint style="success" %}
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)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegram lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Podziel się sztuczkami hackingowymi, przesyłając PR do HackTricks i HackTricks Cloud repozytoriów github.