AWS - Cognito Unauthenticated Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Το Cognito είναι μια υπηρεσία AWS που επιτρέπει στους προγραμματιστές να παρέχουν στους χρήστες της εφαρμογής τους πρόσβαση σε υπηρεσίες AWS. Οι προγραμματιστές θα παρέχουν ρόλους IAM σε αυθεντικοποιημένους χρήστες στην εφαρμογή τους (πιθανώς οι άνθρωποι θα μπορούν απλώς να εγγραφούν) και μπορούν επίσης να παρέχουν έναν ρόλο IAM σε μη αυθεντικοποιημένους χρήστες.
Για βασικές πληροφορίες σχετικά με το Cognito, ελέγξτε:
AWS - Cognito EnumΟι Identity Pools μπορούν να παρέχουν ρόλους IAM σε μη αυθεντικοποιημένους χρήστες που απλώς γνωρίζουν το Identity Pool ID (το οποίο είναι αρκετά κοινό να βρείτε), και ένας επιτιθέμενος με αυτές τις πληροφορίες θα μπορούσε να προσπαθήσει να πρόσβαση σε αυτόν τον ρόλο IAM και να τον εκμεταλλευτεί. Επιπλέον, οι ρόλοι IAM θα μπορούσαν επίσης να ανατεθούν σε αυθεντικοποιημένους χρήστες που έχουν πρόσβαση στην Identity Pool. Εάν ένας επιτιθέμενος μπορεί να εγγραφεί ως χρήστης ή έχει ήδη πρόσβαση στον πάροχο ταυτότητας που χρησιμοποιείται στην identity pool, θα μπορούσε να αποκτήσει πρόσβαση στον ρόλο IAM που παρέχεται στους αυθεντικοποιημένους χρήστες και να καταχραστεί τα προνόμιά του.
Από προεπιλογή, το Cognito επιτρέπει την εγγραφή νέου χρήστη. Η δυνατότητα εγγραφής ενός χρήστη μπορεί να σας δώσει πρόσβαση στην υποκείμενη εφαρμογή ή στον ρόλο πρόσβασης IAM που έχει αυθεντικοποιηθεί μιας Identity Pool που δέχεται ως πάροχο ταυτότητας το Cognito User Pool. Check how to do that here.
Pacu, το πλαίσιο εκμετάλλευσης AWS, περιλαμβάνει τώρα τα modules "cognito__enum" και "cognito__attack" που αυτοματοποιούν την καταμέτρηση όλων των περιουσιακών στοιχείων Cognito σε έναν λογαριασμό και επισημαίνουν αδύναμες ρυθμίσεις, χαρακτηριστικά χρηστών που χρησιμοποιούνται για τον έλεγχο πρόσβασης, κ.λπ., και επίσης αυτοματοποιούν τη δημιουργία χρηστών (συμπεριλαμβανομένης της υποστήριξης MFA) και την κλιμάκωση προνομίων με βάση τροποποιήσιμα προσαρμοσμένα χαρακτηριστικά, χρησιμοποιήσιμα διαπιστευτήρια identity pool, αναθέσιμους ρόλους σε id tokens, κ.λπ.
Για περιγραφή των λειτουργιών των modules, δείτε το μέρος 2 της δημοσίευσης στο blog. Για οδηγίες εγκατάστασης, δείτε τη κύρια σελίδα Pacu.
Δείγμα χρήσης cognito__attack
για να προσπαθήσετε να δημιουργήσετε χρήστη και όλους τους διανυσματικούς κλιμακωτές κατά ενός δεδομένου identity pool και client user pool:
Δείγμα χρήσης cognito__enum για τη συλλογή όλων των πισίνων χρηστών, πελατών πισίνας χρηστών, πισίνων ταυτότητας, χρηστών κ.λπ. που είναι ορατές στον τρέχοντα λογαριασμό AWS:
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)