AD Certificates
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)
Ο Θέμα του πιστοποιητικού δηλώνει τον κάτοχό του.
Ένα Δημόσιο Κλειδί συνδυάζεται με ένα ιδιωτικά διατηρούμενο κλειδί για να συνδέσει το πιστοποιητικό με τον νόμιμο κάτοχό του.
Η Περίοδος Ικανότητας, που καθορίζεται από τις ημερομηνίες NotBefore και NotAfter, σηματοδοτεί τη διάρκεια ισχύος του πιστοποιητικού.
Ένας μοναδικός Αριθμός Σειράς, που παρέχεται από την Αρχή Πιστοποίησης (CA), προσδιορίζει κάθε πιστοποιητικό.
Ο Εκδότης αναφέρεται στην CA που έχει εκδώσει το πιστοποιητικό.
SubjectAlternativeName επιτρέπει πρόσθετα ονόματα για το θέμα, ενισχύοντας την ευελιξία αναγνώρισης.
Basic Constraints προσδιορίζουν αν το πιστοποιητικό είναι για μια CA ή μια τελική οντότητα και καθορίζουν περιορισμούς χρήσης.
Extended Key Usages (EKUs) καθορίζουν τους συγκεκριμένους σκοπούς του πιστοποιητικού, όπως η υπογραφή κώδικα ή η κρυπτογράφηση email, μέσω Αναγνωριστικών Αντικειμένων (OIDs).
Ο Αλγόριθμος Υπογραφής προσδιορίζει τη μέθοδο υπογραφής του πιστοποιητικού.
Η Υπογραφή, που δημιουργείται με το ιδιωτικό κλειδί του εκδότη, εγγυάται την αυθεντικότητα του πιστοποιητικού.
Οι Εναλλακτικές Ονομασίες Θέματος (SANs) επεκτείνουν την εφαρμογή ενός πιστοποιητικού σε πολλές ταυτότητες, κρίσιμες για διακομιστές με πολλαπλά domains. Οι ασφαλείς διαδικασίες έκδοσης είναι ζωτικής σημασίας για την αποφυγή κινδύνων προσποίησης από επιτιθέμενους που χειρίζονται την προδιαγραφή SAN.
Η AD CS αναγνωρίζει τα πιστοποιητικά CA σε ένα δάσος AD μέσω καθορισμένων κοντέινερ, το καθένα εξυπηρετεί μοναδικούς ρόλους:
Το κοντέινερ Certification Authorities περιέχει αξιόπιστα πιστοποιητικά ρίζας CA.
Το κοντέινερ Enrolment Services περιγράφει τις Enterprise CAs και τα πρότυπα πιστοποιητικών τους.
Το αντικείμενο NTAuthCertificates περιλαμβάνει πιστοποιητικά CA που έχουν εξουσιοδοτηθεί για την αυθεντικοποίηση AD.
Το κοντέινερ AIA (Authority Information Access) διευκολύνει την επικύρωση της αλυσίδας πιστοποιητικών με ενδιάμεσα και διασταυρούμενα πιστοποιητικά CA.
Η διαδικασία αίτησης ξεκινά με τους πελάτες να βρίσκουν μια Enterprise CA.
Δημιουργείται μια CSR, που περιέχει ένα δημόσιο κλειδί και άλλες λεπτομέρειες, μετά τη δημιουργία ενός ζεύγους δημόσιου-ιδιωτικού κλειδιού.
Η CA αξιολογεί την CSR σε σχέση με τα διαθέσιμα πρότυπα πιστοποιητικών, εκδίδοντας το πιστοποιητικό με βάση τις άδειες του προτύπου.
Μετά την έγκριση, η CA υπογράφει το πιστοποιητικό με το ιδιωτικό της κλειδί και το επιστρέφει στον πελάτη.
Ορισμένα εντός του AD, αυτά τα πρότυπα περιγράφουν τις ρυθμίσεις και τις άδειες για την έκδοση πιστοποιητικών, συμπεριλαμβανομένων των επιτρεπόμενων EKUs και δικαιωμάτων εγγραφής ή τροποποίησης, κρίσιμα για τη διαχείριση της πρόσβασης στις υπηρεσίες πιστοποιητικών.
Η διαδικασία εγγραφής για πιστοποιητικά ξεκινά από έναν διαχειριστή που δημιουργεί ένα πρότυπο πιστοποιητικού, το οποίο στη συνέχεια δημοσιεύεται από μια Enterprise Certificate Authority (CA). Αυτό καθιστά το πρότυπο διαθέσιμο για εγγραφή πελατών, ένα βήμα που επιτυγχάνεται προσθέτοντας το όνομα του προτύπου στο πεδίο certificatetemplates
ενός αντικειμένου Active Directory.
Για να ζητήσει ένας πελάτης ένα πιστοποιητικό, πρέπει να παραχωρηθούν δικαιώματα εγγραφής. Αυτά τα δικαιώματα καθορίζονται από τους περιγραφείς ασφαλείας στο πρότυπο πιστοποιητικού και την ίδια την Enterprise CA. Οι άδειες πρέπει να παραχωρούνται και στις δύο τοποθεσίες για να είναι επιτυχής μια αίτηση.
Αυτά τα δικαιώματα καθορίζονται μέσω Εισόδων Ελέγχου Πρόσβασης (ACEs), που περιγράφουν άδειες όπως:
Δικαιώματα Certificate-Enrollment και Certificate-AutoEnrollment, το καθένα συνδεδεμένο με συγκεκριμένα GUIDs.
ExtendedRights, επιτρέποντας όλες τις επεκτεταμένες άδειες.
FullControl/GenericAll, παρέχοντας πλήρη έλεγχο πάνω στο πρότυπο.
Τα δικαιώματα της CA περιγράφονται στον περιγραφέα ασφαλείας της, προσβάσιμο μέσω της κονσόλας διαχείρισης της Αρχής Πιστοποίησης. Ορισμένες ρυθμίσεις επιτρέπουν ακόμη και σε χρήστες με χαμηλά προνόμια απομακρυσμένη πρόσβαση, γεγονός που θα μπορούσε να είναι ανησυχητικό για την ασφάλεια.
Ορισμένοι έλεγχοι μπορεί να ισχύουν, όπως:
Έγκριση Διαχειριστή: Τοποθετεί τις αιτήσεις σε εκκρεμή κατάσταση μέχρι να εγκριθούν από έναν διαχειριστή πιστοποιητικών.
Πράκτορες Εγγραφής και Εξουσιοδοτημένες Υπογραφές: Προσδιορίζουν τον αριθμό των απαιτούμενων υπογραφών σε μια CSR και τα απαραίτητα Αναγνωριστικά Πολιτικής Εφαρμογής OIDs.
Τα πιστοποιητικά μπορούν να ζητηθούν μέσω:
Windows Client Certificate Enrollment Protocol (MS-WCCE), χρησιμοποιώντας διεπαφές DCOM.
ICertPassage Remote Protocol (MS-ICPR), μέσω ονομάτων σωλήνων ή TCP/IP.
Της διαδικτυακής διεπαφής εγγραφής πιστοποιητικού, με τον ρόλο Web Enrollment της Αρχής Πιστοποίησης εγκατεστημένο.
Της Υπηρεσίας Εγγραφής Πιστοποιητικού (CES), σε συνδυασμό με την Υπηρεσία Πολιτικής Εγγραφής Πιστοποιητικού (CEP).
Της Υπηρεσίας Εγγραφής Δικτύου (NDES) για συσκευές δικτύου, χρησιμοποιώντας το Απλό Πρωτόκολλο Εγγραφής Πιστοποιητικού (SCEP).
Οι χρήστες Windows μπορούν επίσης να ζητήσουν πιστοποιητικά μέσω της GUI (certmgr.msc
ή certlm.msc
) ή εργαλείων γραμμής εντολών (certreq.exe
ή της εντολής Get-Certificate
του PowerShell).
Το Active Directory (AD) υποστηρίζει την πιστοποίηση μέσω πιστοποιητικού, κυρίως χρησιμοποιώντας τα πρωτόκολλα Kerberos και Secure Channel (Schannel).
Στη διαδικασία πιστοποίησης Kerberos, το αίτημα ενός χρήστη για ένα Ticket Granting Ticket (TGT) υπογράφεται χρησιμοποιώντας το ιδιωτικό κλειδί του πιστοποιητικού του χρήστη. Αυτό το αίτημα υποβάλλεται σε πολλές επικυρώσεις από τον ελεγκτή τομέα, συμπεριλαμβανομένης της έγκυρης κατάστασης του πιστοποιητικού, της διαδρομής και της κατάστασης ανάκλησης. Οι επικυρώσεις περιλαμβάνουν επίσης την επαλήθευση ότι το πιστοποιητικό προέρχεται από μια αξιόπιστη πηγή και την επιβεβαίωση της παρουσίας του εκδότη στο κατάστημα πιστοποιητικών NTAUTH. Οι επιτυχείς επικυρώσεις οδηγούν στην έκδοση ενός TGT. Το αντικείμενο NTAuthCertificates
στο AD, που βρίσκεται στο:
is κεντρικό για την establishment εμπιστοσύνης για την πιστοποίηση πιστοποιητικών.
Schannel διευκολύνει ασφαλείς συνδέσεις TLS/SSL, όπου κατά τη διάρκεια ενός handshake, ο πελάτης παρουσιάζει ένα πιστοποιητικό που, αν επικυρωθεί επιτυχώς, εξουσιοδοτεί την πρόσβαση. Η αντιστοίχιση ενός πιστοποιητικού σε έναν λογαριασμό AD μπορεί να περιλαμβάνει τη λειτουργία S4U2Self του Kerberos ή το Subject Alternative Name (SAN) του πιστοποιητικού, μεταξύ άλλων μεθόδων.
Οι υπηρεσίες πιστοποιητικών του AD μπορούν να καταμετρηθούν μέσω LDAP queries, αποκαλύπτοντας πληροφορίες σχετικά με Enterprise Certificate Authorities (CAs) και τις ρυθμίσεις τους. Αυτό είναι προσβάσιμο από οποιονδήποτε χρήστη που έχει πιστοποίηση τομέα χωρίς ειδικά προνόμια. Εργαλεία όπως το Certify και το Certipy χρησιμοποιούνται για την καταμέτρηση και την αξιολόγηση ευπαθειών σε περιβάλλοντα AD CS.
Οι εντολές για τη χρήση αυτών των εργαλείων περιλαμβάνουν:
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)