Kontoübernahme - Inside The Tenant
Zusammenfassung :
Account Takeover (ATO) ist ein Angriff, bei dem eine angreifende Katze das Konto einer anderen Person übernimmt. Es gibt mehrere Möglichkeiten für einen Kontoübernahmeangriff, nämlich Brute-Force-Credentials, Credential Stuffing, Response-Manipulation, Password-Reset-Poisoning, Social Engineering und Phishing, 2FA-Bypass-Angriffe usw.
Beschreibung :
Ich habe eine Schwachstelle in einem privaten Programm auf einer der Bug-Bounty-Plattformen gefunden, für die ich 150 USD erhalten habe. Beim Durchsuchen der Anwendung habe ich eine Einladungsfunktion gefunden, die anfällig für das Lecken von Einladungstoken war. Ich nutzte das durchgesickerte Einladungstoken, um das Konto des Opfers über eine nicht registrierte E-Mail zu übernehmen, die von mir (Angreifer) bearbeitet wurde.
Was ist Mieter?
In einfachen Worten wird ein Mandant als eine Gruppe von Benutzern einer einzelnen Organisation oder Firma definiert. Es gibt einen Administrator im Mandanten, der andere Benutzer einladen kann, für das Unternehmen zu arbeiten, von dem der Mandant erstellt wurde. Ein Mieter kann aus der IT-Abteilung, der Buchhaltung, der Verkaufsabteilung usw. stammen.
Wie habe ich diese Schwachstelle gefunden?
- Ich habe mich in das Konto eingeloggt (Admin-Anmeldedaten wurden von der Plattform bereitgestellt) und auf die Funktion „Benutzer einladen“ geklickt
3. Dann habe ich die Anfrage mit burpsuite abgefangen und mit der rechten Maustaste auf die Anfrage > Abfangen > Antwort auf diese Anfrage geklickt
4. Ich habe die URL für das Einladungstoken erstellt und im Browser geöffnet, weil das Token bereits in der Antwort durchgesickert war, dann habe ich auf Akzeptieren geklickt und mich aufgefordert, eine E-Mail einzugeben
5. Dann ging ich zu Temp Mail und kopierte die nicht registrierte E-Mail und fügte sie auf der Website ein und klickte auf die Schaltfläche und dann auf Genehmigen
6. Dann wurde der Code an eine nicht registrierte E-Mail (E-Mail des Angreifers) gesendet
7. Ich habe den Code verwendet und die an das Opfer gesendete Einladung angenommen
Warum es passiert ist ?
Meiner Meinung nach,
Zwei Fehler gab es in der Webanwendung
- Das Einladungstoken wurde in der Antwort durchgesickert, während der Benutzer eingeladen wurde
- Die Validierung des eingeladenen Benutzers auf dem Einladungstoken wurde nicht durchgeführt
Jeder Administrator kann das Konto jedes Benutzers übernehmen, der vom Administrator zum Mandanten eingeladen wird.
Der Schweregrad wäre niedrig bis mittel, da sich der Angriff innerhalb des Mandanten befindet und abgesehen davon kann ein Administrator hier nur die Identität des eingeladenen Benutzers annehmen und die Aktionen im Namen dieses Benutzers ausführen, und ein Administrator kann sich nicht als vorhandener Benutzer ausgeben .
Berechneter CVSS
Vektorzeichenfolge - CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
Ergebnis - 5,4 (Mittel)
Minderung
Hier wird es zwei Abschwächungen geben
- Der Einladungscode sollte nicht in der Antwort vom Server gesendet werden
- Der Einladungscode und die eingeladene E-Mail-Adresse sollten überprüft werden
// Prüfen Sie, ob die angegebene E-Mail mit dem Einladungscode übereinstimmt
if (email == inviteCode) {
// E-Mail stimmt mit dem Einladungscode überein
// Fahren Sie mit dem Rest des Authentifizierungsprozesses fort
// …
} else {
// E-Mail stimmt nicht mit der Einladung überein code
// Gibt eine Fehlermeldung zurück oder fragt nach dem korrekten Einladungscode
// …
}

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































