Okta Security
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)
Okta, Inc. αναγνωρίζεται στον τομέα της διαχείρισης ταυτότητας και πρόσβασης για τις λύσεις λογισμικού που βασίζονται στο cloud. Αυτές οι λύσεις έχουν σχεδιαστεί για να απλοποιούν και να ασφαλίζουν την αυθεντικοποίηση χρηστών σε διάφορες σύγχρονες εφαρμογές. Απευθύνονται όχι μόνο σε εταιρείες που επιδιώκουν να προστατεύσουν τα ευαίσθητα δεδομένα τους, αλλά και σε προγραμματιστές που ενδιαφέρονται να ενσωματώσουν ελέγχους ταυτότητας σε εφαρμογές, διαδικτυακές υπηρεσίες και συσκευές.
Η ναυαρχίδα προσφοράς της Okta είναι το Okta Identity Cloud. Αυτή η πλατφόρμα περιλαμβάνει μια σουίτα προϊόντων, συμπεριλαμβανομένων αλλά όχι περιορισμένων σε:
Single Sign-On (SSO): Απλοποιεί την πρόσβαση χρηστών επιτρέποντας ένα σύνολο διαπιστευτηρίων σύνδεσης σε πολλές εφαρμογές.
Multi-Factor Authentication (MFA): Ενισχύει την ασφάλεια απαιτώντας πολλαπλές μορφές επαλήθευσης.
Lifecycle Management: Αυτοματοποιεί τη διαδικασία δημιουργίας, ενημέρωσης και απενεργοποίησης λογαριασμών χρηστών.
Universal Directory: Διευκολύνει την κεντρική διαχείριση χρηστών, ομάδων και συσκευών.
API Access Management: Ασφαλίζει και διαχειρίζεται την πρόσβαση σε APIs.
Αυτές οι υπηρεσίες στοχεύουν συλλογικά στην ενίσχυση της προστασίας δεδομένων και στην απλοποίηση της πρόσβασης χρηστών, βελτιώνοντας τόσο την ασφάλεια όσο και την ευκολία. Η ευελιξία των λύσεων της Okta τις καθιστά δημοφιλή επιλογή σε διάφορες βιομηχανίες, ωφέλιμες για μεγάλες επιχειρήσεις, μικρές εταιρείες και μεμονωμένους προγραμματιστές. Από την τελευταία ενημέρωση τον Σεπτέμβριο του 2021, η Okta αναγνωρίζεται ως μια εξέχουσα οντότητα στον τομέα της Διαχείρισης Ταυτότητας και Πρόσβασης (IAM).
Ο κύριος στόχος της Okta είναι να ρυθμίσει την πρόσβαση σε διαφορετικούς χρήστες και ομάδες σε εξωτερικές εφαρμογές. Εάν καταφέρετε να συμβιβάσετε τα δικαιώματα διαχειριστή σε ένα περιβάλλον Okta, είναι πολύ πιθανό να μπορέσετε να συμβιβάσετε όλες τις άλλες πλατφόρμες που χρησιμοποιεί η εταιρεία.
Για να εκτελέσετε μια ανασκόπηση ασφάλειας ενός περιβάλλοντος Okta, θα πρέπει να ζητήσετε μόνο ανάγνωση πρόσβαση διαχειριστή.
Υπάρχουν χρήστες (οι οποίοι μπορούν να είναι αποθηκευμένοι στην Okta, συνδεδεμένοι από ρυθμισμένους Πάροχους Ταυτότητας ή αυθεντικοποιημένοι μέσω Active Directory ή LDAP). Αυτοί οι χρήστες μπορούν να είναι μέσα σε ομάδες. Υπάρχουν επίσης αυθεντικοποιητές: διαφορετικές επιλογές για αυθεντικοποίηση όπως κωδικός πρόσβασης και διάφορες 2FA όπως WebAuthn, email, τηλέφωνο, okta verify (μπορεί να είναι ενεργοποιημένα ή απενεργοποιημένα)...
Στη συνέχεια, υπάρχουν εφαρμογές συγχρονισμένες με την Okta. Κάθε εφαρμογή θα έχει κάποια χαρτογράφηση με την Okta για να μοιράζεται πληροφορίες (όπως διευθύνσεις email, ονόματα...). Επιπλέον, κάθε εφαρμογή πρέπει να είναι μέσα σε μια Πολιτική Αυθεντικοποίησης, η οποία υποδεικνύει τους απαιτούμενους αυθεντικοποιητές για έναν χρήστη να πρόσβαση στην εφαρμογή.
Ο πιο ισχυρός ρόλος είναι ο Super Administrator.
Εάν ένας επιτιθέμενος συμβιβάσει την Okta με πρόσβαση Διαχειριστή, όλες οι εφαρμογές που εμπιστεύονται την Okta θα είναι πολύ πιθανό να συμβιβαστούν.
Συνήθως η πύλη μιας εταιρείας θα βρίσκεται στο companyname.okta.com. Αν όχι, δοκιμάστε απλές παραλλαγές του companyname. Αν δεν μπορείτε να το βρείτε, είναι επίσης πιθανό ότι ο οργανισμός έχει μια CNAME εγγραφή όπως okta.companyname.com
που δείχνει στην πύλη Okta.
Εάν companyname.kerberos.okta.com
είναι ενεργό, το Kerberos χρησιμοποιείται για την πρόσβαση στην Okta, παρακάμπτοντας συνήθως το MFA για τους χρήστες Windows. Για να βρείτε τους χρήστες Okta που αυθεντικοποιούνται μέσω Kerberos στο AD, εκτελέστε getST.py
με κατάλληλες παραμέτρους. Αφού αποκτήσετε ένα εισιτήριο χρήστη AD, εισάγετέ το σε έναν ελεγχόμενο υπολογιστή χρησιμοποιώντας εργαλεία όπως Rubeus ή Mimikatz, διασφαλίζοντας ότι clientname.kerberos.okta.com
είναι στη ζώνη "Intranet" των Επιλογών Internet. Η πρόσβαση σε μια συγκεκριμένη διεύθυνση URL θα πρέπει να επιστρέψει μια JSON "OK" απάντηση, υποδεικνύοντας την αποδοχή του εισιτηρίου Kerberos και παρέχοντας πρόσβαση στον πίνακα ελέγχου της Okta.
Η συμβιβασμός του λογαριασμού υπηρεσίας Okta με το SPN αντιπροσώπευσης επιτρέπει μια επίθεση Silver Ticket. Ωστόσο, η χρήση του AES από την Okta για την κρυπτογράφηση εισιτηρίων απαιτεί την κατοχή του κλειδιού AES ή του απλού κωδικού πρόσβασης. Χρησιμοποιήστε ticketer.py
για να δημιουργήσετε ένα εισιτήριο για τον θύμα χρήστη και παραδώστε το μέσω του προγράμματος περιήγησης για να αυθεντικοποιηθείτε με την Okta.
Check the attack in https://trustedsec.com/blog/okta-for-red-teamers.
Αυτή η τεχνική περιλαμβάνει την πρόσβαση στον Okta AD Agent σε έναν διακομιστή, ο οποίος συγχρονίζει χρήστες και χειρίζεται την αυθεντικοποίηση. Εξετάζοντας και αποκρυπτογραφώντας τις ρυθμίσεις στο OktaAgentService.exe.config
, ιδίως το AgentToken χρησιμοποιώντας DPAPI, ένας επιτιθέμενος μπορεί δυνητικά να παρακολουθήσει και να χειριστεί δεδομένα αυθεντικοποίησης. Αυτό επιτρέπει όχι μόνο παρακολούθηση και καταγραφή διαπιστευτηρίων χρηστών σε απλή μορφή κατά τη διαδικασία αυθεντικοποίησης της Okta, αλλά και αντίκτυπο σε προσπάθειες αυθεντικοποίησης, επιτρέποντας έτσι μη εξουσιοδοτημένη πρόσβαση ή παρέχοντας καθολική αυθεντικοποίηση μέσω της Okta (παρόμοια με ένα 'κλειδί σκελετού').
Check the attack in https://trustedsec.com/blog/okta-for-red-teamers.
Αυτή η τεχνική περιλαμβάνει την κατάληψη ενός Okta AD Agent αποκτώντας πρώτα έναν OAuth Code, στη συνέχεια ζητώντας ένα API token. Το token σχετίζεται με έναν τομέα AD, και ένας σύνδεσμος ονομάζεται για να δημιουργήσει έναν ψεύτικο AD agent. Η αρχικοποίηση επιτρέπει στον πράκτορα να επεξεργάζεται τις προσπάθειες αυθεντικοποίησης, καταγράφοντας διαπιστευτήρια μέσω του API της Okta. Διαθέσιμα εργαλεία αυτοματοποίησης διευκολύνουν αυτή τη διαδικασία, προσφέροντας μια ομαλή μέθοδο για την παρεμπόδιση και την επεξεργασία δεδομένων αυθεντικοποίησης εντός του περιβάλλοντος Okta.
Check the attack in https://trustedsec.com/blog/okta-for-red-teamers.
Check the attack in https://trustedsec.com/blog/okta-for-red-teamers.
Η τεχνική περιλαμβάνει την ανάπτυξη ενός ψεύτικου παρόχου SAML. Ενσωματώνοντας έναν εξωτερικό Πάροχο Ταυτότητας (IdP) στο πλαίσιο της Okta χρησιμοποιώντας έναν προνομιακό λογαριασμό, οι επιτιθέμενοι μπορούν να ελέγξουν τον IdP, εγκρίνοντας οποιοδήποτε αίτημα αυθεντικοποίησης κατά βούληση. Η διαδικασία περιλαμβάνει τη ρύθμιση ενός SAML 2.0 IdP στην Okta, τη χειραγώγηση της διεύθυνσης URL Single Sign-On του IdP για ανακατεύθυνση μέσω του τοπικού αρχείου hosts, τη δημιουργία ενός αυτο-υπογεγραμμένου πιστοποιητικού και τη ρύθμιση των ρυθμίσεων της Okta ώστε να ταιριάζουν με το όνομα χρήστη ή το email. Η επιτυχής εκτέλεση αυτών των βημάτων επιτρέπει την αυθεντικοποίηση ως οποιοσδήποτε χρήστης της Okta, παρακάμπτοντας την ανάγκη για διαπιστευτήρια ατομικών χρηστών, σημαντικά αυξάνοντας τον έλεγχο πρόσβασης με έναν δυνητικά απαρατήρητο τρόπο.
Στο αυτό το blog post εξηγείται πώς να προετοιμάσετε μια καμπάνια phishing κατά μιας πύλης Okta.
Οι ιδιότητες που μπορεί να έχει και να τροποποιήσει κάθε χρήστης (όπως email ή πρώτο όνομα) μπορούν να ρυθμιστούν στην Okta. Εάν μια εφαρμογή εμπιστεύεται ως ID μια ιδιότητα που μπορεί ο χρήστης να τροποποιήσει, θα είναι σε θέση να παριστάνει άλλους χρήστες σε αυτήν την πλατφόρμα.
Επομένως, εάν η εφαρμογή εμπιστεύεται το πεδίο userName
, πιθανότατα δεν θα μπορείτε να το αλλάξετε (διότι συνήθως δεν μπορείτε να αλλάξετε αυτό το πεδίο), αλλά αν εμπιστεύεται για παράδειγμα το primaryEmail
μπορεί να είστε σε θέση να το αλλάξετε σε μια διεύθυνση email συναδέλφου και να το παριστάνετε (θα χρειαστεί να έχετε πρόσβαση στο email και να αποδεχθείτε την αλλαγή).
Σημειώστε ότι αυτή η παριστάνωση εξαρτάται από το πώς έχει ρυθμιστεί κάθε εφαρμογή. Μόνο αυτές που εμπιστεύονται το πεδίο που τροποποιήσατε και αποδέχονται ενημερώσεις θα συμβιβαστούν. Επομένως, η εφαρμογή θα πρέπει να έχει αυτό το πεδίο ενεργοποιημένο αν υπάρχει:
Έχω επίσης δει άλλες εφαρμογές που ήταν ευάλωτες αλλά δεν είχαν αυτό το πεδίο στις ρυθμίσεις της Okta (στο τέλος διαφορετικές εφαρμογές ρυθμίζονται διαφορετικά).
Ο καλύτερος τρόπος για να διαπιστώσετε αν μπορείτε να παριστάνετε οποιονδήποτε σε κάθε εφαρμογή θα ήταν να το δοκιμάσετε!
Οι πολιτικές ανίχνευσης συμπεριφοράς στην Okta μπορεί να είναι άγνωστες μέχρι να συναντηθούν, αλλά η παράκαμψη τους μπορεί να επιτευχθεί στοχεύοντας άμεσα τις εφαρμογές Okta, αποφεύγοντας τον κύριο πίνακα ελέγχου της Okta. Με ένα token πρόσβασης Okta, επαναπαίξτε το token στη διεύθυνση URL συγκεκριμένης εφαρμογής Okta αντί για την κύρια σελίδα σύνδεσης.
Οι βασικές συστάσεις περιλαμβάνουν:
Αποφύγετε τη χρήση δημοφιλών ανωνυμοποιητικών proxy και υπηρεσιών VPN κατά την επαναπαραγωγή καταγεγραμμένων tokens πρόσβασης.
Διασφαλίστε συνεπείς συμβολοσειρές user-agent μεταξύ του πελάτη και των επαναπαραγμένων tokens πρόσβασης.
Αποφύγετε την επαναπαραγωγή tokens από διαφορετικούς χρήστες από την ίδια διεύθυνση IP.
Να είστε προσεκτικοί όταν επαναπαράγετε tokens κατά του πίνακα ελέγχου της Okta.
Εάν γνωρίζετε τις διευθύνσεις IP της εταιρείας-θύματος, περιορίστε την κίνηση σε αυτές τις IP ή την περιοχή τους, αποκλείοντας όλη την άλλη κίνηση.
Η Okta έχει πολλές δυνατές ρυθμίσεις, σε αυτή τη σελίδα θα βρείτε πώς να τις ελέγξετε ώστε να είναι όσο το δυνατόν πιο ασφαλείς:
Okta HardeningLearn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)