mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
146 lines
7.6 KiB
Markdown
146 lines
7.6 KiB
Markdown
# Bypass 2FA/OTP
|
|
|
|
<details>
|
|
|
|
<summary><strong>Nauka hakowania AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Inne sposoby wsparcia HackTricks:
|
|
|
|
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
|
|
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Podziel się swoimi sztuczkami hakowania, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na GitHubie.
|
|
|
|
</details>
|
|
|
|
## **Techniki Bypassowania Wzmocnionej Dwuetapowej Autoryzacji**
|
|
|
|
### **Bezpośredni Dostęp do Końcowego Punktu**
|
|
|
|
Aby ominąć 2FA, dostęp do następnego punktu końcowego jest kluczowy. W przypadku niepowodzenia, zmień **nagłówek Referrer** tak, aby naśladować nawigację z strony weryfikacji 2FA.
|
|
|
|
### **Ponowne Wykorzystanie Tokena**
|
|
|
|
Ponowne wykorzystanie wcześniej użytych tokenów do uwierzytelniania w ramach konta może być skuteczne.
|
|
|
|
### **Wykorzystanie Niewykorzystanych Tokenów**
|
|
|
|
Próba wydobycia tokenu z własnego konta w celu ominiecia 2FA w innym koncie.
|
|
|
|
### **Ujawnienie Tokenu**
|
|
|
|
Sprawdź, czy token jest ujawniony w odpowiedzi z aplikacji internetowej.
|
|
|
|
### **Wykorzystanie Linku Weryfikacyjnego**
|
|
|
|
Wykorzystanie **linku weryfikacyjnego wysłanego drogą mailową podczas tworzenia konta** może umożliwić dostęp do profilu bez 2FA, jak opisano w szczegółowym [poście](https://srahulceh.medium.com/behind-the-scenes-of-a-security-bug-the-perils-of-2fa-cookie-generation-496d9519771b).
|
|
|
|
### **Manipulacja Sesją**
|
|
|
|
Rozpoczęcie sesji zarówno dla konta użytkownika, jak i ofiary, oraz ukończenie 2FA dla konta użytkownika bez kontynuowania, umożliwia próbę dostępu do kolejnego kroku w przepływie konta ofiary, wykorzystując ograniczenia zarządzania sesją po stronie serwera.
|
|
|
|
### **Mechanizm Resetowania Hasła**
|
|
|
|
Badanie funkcji resetowania hasła, która loguje użytkownika do aplikacji po zresetowaniu, pod kątem potencjału do wielokrotnego resetowania za pomocą tego samego linku, jest kluczowe. Logowanie się za pomocą nowo zresetowanych danych uwierzytelniających może ominąć 2FA.
|
|
|
|
### **Kompromitacja Platformy OAuth**
|
|
|
|
Skompromitowanie konta użytkownika na zaufanej platformie **OAuth** (np. Google, Facebook) może otworzyć drogę do ominiecia 2FA.
|
|
|
|
### **Ataki Brute Force**
|
|
|
|
#### **Brak Limitu Szybkości**
|
|
|
|
Brak limitu na liczbę prób kodu umożliwia ataki brute force, choć należy wziąć pod uwagę potencjalne ciche ograniczenia szybkości.
|
|
|
|
#### **Wolny Atak Brute Force**
|
|
|
|
Wolny atak brute force jest możliwy, gdy istnieją limity szybkości przepływu bez ogólnego limitu szybkości.
|
|
|
|
#### **Resetowanie Limitu Ponownego Wysyłania Kodu**
|
|
|
|
Ponowne wysłanie kodu resetuje limit szybkości, ułatwiając kontynuację prób ataku brute force.
|
|
|
|
#### **Ominięcie Limitu Szybkości Po Stronie Klienta**
|
|
|
|
Dokumentuje techniki omijania limitów szybkości po stronie klienta.
|
|
|
|
#### **Brak Limitu Szybkości Dla Działań Wewnętrznych**
|
|
|
|
Limity szybkości mogą chronić przed próbami logowania, ale nie przed działaniami wewnętrznymi na koncie.
|
|
|
|
#### **Koszty Ponownego Wysyłania Kodu SMS**
|
|
|
|
Nadmierna ponowna wysyłka kodów za pomocą SMS generuje koszty dla firmy, choć nie omija 2FA.
|
|
|
|
#### **Nieskończone Generowanie OTP**
|
|
|
|
Nieskończone generowanie OTP za pomocą prostych kodów umożliwia atak brute force poprzez ponowne próbowanie małego zestawu kodów.
|
|
|
|
### **Wykorzystanie Wyścigu Warunków**
|
|
|
|
Wykorzystanie wyścigów warunków do ominiecia 2FA można znaleźć w konkretnym dokumencie.
|
|
|
|
### **Ukierunkowane Narażenie CSRF/Clickjacking**
|
|
|
|
Eksploracja narażeń CSRF lub Clickjacking w celu wyłączenia 2FA jest skuteczną strategią.
|
|
|
|
### **Wykorzystanie Funkcji "Zapamiętaj Mnie"**
|
|
|
|
#### **Przewidywalne Wartości Ciasteczka**
|
|
|
|
Zgadywanie wartości ciasteczka "zapamiętaj mnie" może ominąć ograniczenia.
|
|
|
|
#### **Podszywanie się pod Adres IP**
|
|
|
|
Podszywanie się pod adres IP ofiary za pomocą nagłówka **X-Forwarded-For** może ominąć ograniczenia.
|
|
|
|
### **Wykorzystanie Starszych Wersji**
|
|
|
|
#### **Poddomeny**
|
|
|
|
Testowanie poddomen może wykorzystać przestarzałe wersje bez wsparcia dla 2FA lub zawierać podatne implementacje 2FA.
|
|
|
|
#### **Końcówki API**
|
|
|
|
Starsze wersje API, wskazane przez ścieżki katalogowe /v\*, mogą być podatne na metody omijania 2FA.
|
|
|
|
### **Obsługa Poprzednich Sesji**
|
|
|
|
Zakończenie istniejących sesji po aktywacji 2FA zabezpiecza konta przed nieautoryzowanym dostępem z kompromitowanych sesji.
|
|
|
|
### **Wady Kontroli Dostępu z Kodami Zapasowymi**
|
|
|
|
Natychmiastowe generowanie i potencjalne nieautoryzowane pozyskiwanie kodów zapasowych po aktywacji 2FA, zwłaszcza przy błędnej konfiguracji CORS/XSS, stanowi ryzyko.
|
|
|
|
### **Ujawnienie Informacji na Stronie 2FA**
|
|
|
|
Ujawnienie wrażliwych informacji (np. numer telefonu) na stronie weryfikacji 2FA stanowi zagrożenie.
|
|
|
|
### **Wyłączenie Resetowania Hasła 2FA**
|
|
|
|
Proces demonstrujący potencjalną metodę omijania obejmuje tworzenie konta, aktywację 2FA, resetowanie hasła i kolejne logowanie bez wymagania 2FA.
|
|
|
|
### **Zapytania Przechodnie**
|
|
|
|
Wykorzystanie zapytań przekierowujących do zaciemnienia prób brute force lub wprowadzenia w błąd mechanizmów ograniczania szybkości dodaje kolejną warstwę do strategii omijania. Tworzenie takich zapytań wymaga subtelnej znajomości środków bezpieczeństwa aplikacji i zachowań ograniczania szybkości.
|
|
|
|
## Odnośniki
|
|
|
|
* [https://medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35](https://github.com/carlospolop/hacktricks/blob/master/pentesting-web/%22https:/medium.com/@iSecMax/two-factor-authentication-security-testing-and-possible-bypasses-f65650412b35%22/README.md)
|
|
* [https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718](https://azwi.medium.com/2-factor-authentication-bypass-3b2bbd907718)
|
|
|
|
<details>
|
|
|
|
<summary><strong>Nauka hakowania AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Inne sposoby wsparcia HackTricks:
|
|
|
|
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
|
|
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
|
|
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Podziel się swoimi sztuczkami hakowania, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na GitHubie.
|
|
|
|
</details>
|