Account Takeover
Last updated
Last updated
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Το email ενός λογαριασμού θα πρέπει να προσπαθήσετε να αλλάξετε, και η διαδικασία επιβεβαίωσης πρέπει να εξεταστεί. Εάν βρεθεί ασθενής, το email θα πρέπει να αλλάξει σε αυτό του προοριζόμενου θύματος και στη συνέχεια να επιβεβαιωθεί.
Ο λογαριασμός του προοριζόμενου θύματος victim@gmail.com
Ένας λογαριασμός θα πρέπει να δημιουργηθεί χρησιμοποιώντας Unicode
για παράδειγμα: vićtim@gmail.com
Όπως εξηγήθηκε σε αυτή την ομιλία, η προηγούμενη επίθεση θα μπορούσε επίσης να γίνει εκμεταλλευόμενη τρίτους παρόχους ταυτότητας:
Δημιουργήστε έναν λογαριασμό στον τρίτο πάροχο ταυτότητας με παρόμοιο email με το θύμα χρησιμοποιώντας κάποιο χαρακτήρα unicode (vićtim@company.com
).
Ο τρίτος πάροχος δεν θα πρέπει να επαληθεύει το email
Εάν ο πάροχος ταυτότητας επαληθεύσει το email, ίσως μπορείτε να επιτεθείτε στο μέρος του τομέα όπως: victim@ćompany.com
και να καταχωρίσετε αυτόν τον τομέα και να ελπίζετε ότι ο πάροχος ταυτότητας θα δημιουργήσει την ascii έκδοση του τομέα ενώ η πλατφόρμα του θύματος κανονικοποιεί το όνομα τομέα.
Συνδεθείτε μέσω αυτού του παρόχου ταυτότητας στην πλατφόρμα του θύματος που θα πρέπει να κανονικοποιήσει τον χαρακτήρα unicode και να σας επιτρέψει να αποκτήσετε πρόσβαση στον λογαριασμό του θύματος.
Για περισσότερες λεπτομέρειες, ανατρέξτε στο έγγραφο σχετικά με την Κανονικοποίηση Unicode:
Unicode NormalizationΕάν το σύστημα στόχος επιτρέπει την επαναχρησιμοποίηση του συνδέσμου επαναφοράς, θα πρέπει να καταβληθούν προσπάθειες για να βρείτε περισσότερους συνδέσμους επαναφοράς χρησιμοποιώντας εργαλεία όπως gau
, wayback
, ή scan.io
.
Το email του θύματος θα πρέπει να χρησιμοποιηθεί για να εγγραφεί στην πλατφόρμα, και θα πρέπει να οριστεί ένας κωδικός πρόσβασης (θα πρέπει να γίνει μια προσπάθεια επιβεβαίωσής του, αν και η έλλειψη πρόσβασης στα emails του θύματος μπορεί να το καθιστά αδύνατο).
Θα πρέπει να περιμένετε μέχρι το θύμα να εγγραφεί χρησιμοποιώντας OAuth και να επιβεβαιώσει τον λογαριασμό.
Ελπίζεται ότι η κανονική εγγραφή θα επιβεβαιωθεί, επιτρέποντας την πρόσβαση στον λογαριασμό του θύματος.
Εάν η σελίδα περιέχει λάθη ρύθμισης CORS, μπορεί να είστε σε θέση να κλέψετε ευαίσθητες πληροφορίες από τον χρήστη για να αναλάβετε τον λογαριασμό του ή να τον κάνετε να αλλάξει τις πληροφορίες αυθεντικοποίησης για τον ίδιο σκοπό:
CORS - Misconfigurations & BypassΕάν η σελίδα είναι ευάλωτη σε CSRF, μπορεί να είστε σε θέση να κάνετε τον χρήστη να τροποποιήσει τον κωδικό πρόσβασής του, το email ή την αυθεντικοποίηση ώστε να μπορείτε στη συνέχεια να αποκτήσετε πρόσβαση σε αυτό:
CSRF (Cross Site Request Forgery)Εάν βρείτε ένα XSS στην εφαρμογή, μπορεί να είστε σε θέση να κλέψετε cookies, τοπική αποθήκευση ή πληροφορίες από τη σελίδα που θα μπορούσαν να σας επιτρέψουν να αναλάβετε τον λογαριασμό:
XSS (Cross Site Scripting)Εάν βρείτε έναν περιορισμένο XSS ή μια ανάληψη υποτομέα, θα μπορούσατε να παίξετε με τα cookies (σταθεροποιώντας τα για παράδειγμα) για να προσπαθήσετε να συμβιβάσετε τον λογαριασμό του θύματος:
Cookies HackingΕάν η απόκριση αυθεντικοποίησης μπορεί να μειωθεί σε μια απλή boolean, απλώς προσπαθήστε να αλλάξετε το false σε true και δείτε αν αποκτάτε πρόσβαση.
Η επικεφαλίδα Host τροποποιείται μετά από την έναρξη ενός αιτήματος επαναφοράς κωδικού.
Η επικεφαλίδα X-Forwarded-For
τροποποιείται σε attacker.com
.
Οι επικεφαλίδες Host, Referrer και Origin αλλάζουν ταυτόχρονα σε attacker.com
.
Μετά την έναρξη μιας επαναφοράς κωδικού και στη συνέχεια την επιλογή να ξανασταλεί το email, χρησιμοποιούνται και οι τρεις από τις παραπάνω μεθόδους.
Μανipulation Κωδικού: Ο κωδικός κατάστασης τροποποιείται σε 200 OK
.
Μανipulation Κωδικού και Σώματος:
Ο κωδικός κατάστασης αλλάζει σε 200 OK
.
Το σώμα της απόκρισης τροποποιείται σε {"success":true}
ή ένα κενό αντικείμενο {}
.
Αυτές οι τεχνικές μανipulation είναι αποτελεσματικές σε σενάρια όπου χρησιμοποιείται JSON για τη μετάδοση και λήψη δεδομένων.
Από αυτή την αναφορά:
Ο επιτιθέμενος ζητά να αλλάξει το email του με ένα νέο
Ο επιτιθέμενος λαμβάνει έναν σύνδεσμο για να επιβεβαιώσει την αλλαγή του email
Ο επιτιθέμενος στέλνει το σύνδεσμο στο θύμα ώστε να το κάνει κλικ
Το email του θύματος αλλάζει σε αυτό που υποδεικνύει ο επιτιθέμενος
Ο επιτιθέμενος μπορεί να ανακτήσει τον κωδικό πρόσβασης και να αναλάβει τον λογαριασμό
Αυτό συνέβη επίσης σε αυτή την αναφορά.
Όπως εξηγήθηκε σε αυτή την ανάρτηση, ήταν δυνατό να συνδεθείτε σε έναν λογαριασμό, να αποθηκεύσετε τα cookies ως αυθεντικοποιημένος χρήστης, να αποσυνδεθείτε και στη συνέχεια να συνδεθείτε ξανά. Με τη νέα σύνδεση, αν και μπορεί να παραχθούν διαφορετικά cookies, τα παλιά άρχισαν να λειτουργούν ξανά.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)