Abusing Tokens
Διακριτικά
Αν δεν γνωρίζετε τι είναι τα Διακριτικά Πρόσβασης των Windows διαβάστε αυτή τη σελίδα πριν συνεχίσετε:
pageAccess TokensΊσως να μπορείτε να αναβαθμίσετε τα δικαιώματά σας καταχρώμενοι τα διακριτικά που ήδη έχετε
SeImpersonatePrivilege
Αυτό το δικαίωμα που κατέχεται από οποιαδήποτε διαδικασία επιτρέπει την υποκατάσταση (αλλά όχι τη δημιουργία) οποιουδήποτε διακριτικού, εφόσον μπορεί να ληφθεί μια λαβή γι' αυτό. Ένα προνομιούχο διακριτικό μπορεί να αποκτηθεί από ένα υπηρεσία των Windows (DCOM) προκαλώντας τη να πραγματοποιήσει ελέγχους ταυτότητας NTLM εναντίον ενός εκμεταλλεύσιμου σφάλματος, επιτρέποντας στη συνέχεια την εκτέλεση μιας διαδικασίας με δικαιώματα ΣΥΣΤΗΜΑΤΟΣ. Αυτή η ευπάθεια μπορεί να εκμεταλλευτεί χρησιμοποιώντας διάφορα εργαλεία, όπως το juicy-potato, το RogueWinRM (το οποίο απαιτεί την απενεργοποίηση του winrm), το SweetPotato και το PrintSpoofer.
pageRoguePotato, PrintSpoofer, SharpEfsPotato, GodPotatopageJuicyPotatoSeAssignPrimaryPrivilege
Είναι πολύ παρόμοιο με το SeImpersonatePrivilege, θα χρησιμοποιήσει την ίδια μέθοδο για να αποκτήσει ένα προνομιούχο διακριτικό. Στη συνέχεια, αυτό το δικαίωμα επιτρέπει την ανάθεση ενός πρωτεύοντος διακριτικού σε μια νέα/ανασταλμένη διαδικασία. Με το προνομιούχο διακριτικό υποκατάστασης μπορείτε να παράγετε ένα πρωτεύον διακριτικό (DuplicateTokenEx). Με το διακριτικό, μπορείτε να δημιουργήσετε μια νέα διαδικασία με το 'CreateProcessAsUser' ή να δημιουργήσετε μια διαδικασία ανασταλμένη και να ορίσετε το διακριτικό (γενικά, δεν μπορείτε να τροποποιήσετε το πρωτεύον διακριτικό μιας εκτελούμενης διαδικασίας).
SeTcbPrivilege
Αν έχετε ενεργοποιήσει αυτό το διακριτικό μπορείτε να χρησιμοποιήσετε το KERB_S4U_LOGON για να λάβετε ένα διακριτικό υποκατάστασης για οποιονδήποτε άλλο χρήστη χωρίς να γνωρίζετε τα διαπιστευτήριά του, προσθέσετε μια αυθαίρετη ομάδα (διαχειριστές) στο διακριτικό, ορίσετε το επίπεδο ακεραιότητας του διακριτικού σε "μεσαίο" και αναθέσετε αυτό το διακριτικό στο τρέχον νήμα (SetThreadToken).
SeBackupPrivilege
Το σύστημα προκαλεί την χορήγηση όλων των δικαιωμάτων ανάγνωσης ελέγχου σε οποιοδήποτε αρχείο (περιορισμένο σε λειτουργίες ανάγνωσης) με αυτό το διακριτικό. Χρησιμοποιείται για την ανάγνωση των κατακερματισμένων κωδικών πρόσβασης των τοπικών λογαριασμών Διαχειριστή από το μητρώο, με αποτέλεσμα να μπορούν να χρησιμοποιηθούν εργαλεία όπως το "psexec" ή το "wmicexec" με τον κατακερματισμένο κωδικό (τεχνική Pass-the-Hash). Ωστόσο, αυτή η τεχνική αποτυγχάνει υπό δύο προϋποθέσεις: όταν ο λογαριασμός τοπικού Διαχειριστή είναι απενεργοποιημένος ή όταν υπάρχει μια πολιτική που αφαιρεί τα διαχειριστικά δικαιώματα από τους τοπικούς Διαχειριστές που συνδέονται απομακρυσμένα. Μπορείτε να καταχρηστείτε αυτό το διακριτικό με:
ακολουθώντας τον IppSec στο https://www.youtube.com/watch?v=IfCysW0Od8w&t=2610&ab_channel=IppSec
Ή όπως εξηγείται στην ενότητα ανάδειξη δικαιωμάτων με τους Τελεστές Αντιγράφων Ασφαλείας του:
SeRestorePrivilege
Το δικαίωμα για εγγραφή πρόσβασης σε οποιοδήποτε αρχείο συστήματος, ανεξαρτήτως της λίστας ελέγχου πρόσβασης (ACL) του αρχείου, παρέχεται από αυτό το δικαίωμα. Ανοίγει πολλές δυνατότητες για αναβάθμιση, συμπεριλαμβανομένης της δυνατότητας να τροποποιήσετε υπηρεσίες, να εκτελέσετε DLL Hijacking και να ορίσετε debuggers μέσω των Image File Execution Options μεταξύ διαφόρων άλλων τεχνικών.
SeCreateTokenPrivilege
Το SeCreateTokenPrivilege είναι ένα ισχυρό δικαίωμα, ιδιαίτερα χρήσιμο όταν ένας χρήστης διαθέτει τη δυνατότητα υποκατάστασης διακριτικών, αλλά και σε περίπτωση έλλειψης του SeImpersonatePrivilege. Αυτή η ικανότητα εξαρτάται από τη δυνατότητα υποκατάστασης ενός διακριτικού που αντιπροσωπεύει τον ίδιο χρήστη και του οποίου το επίπεδο ακεραιότητας δεν υπερβαίνει αυτό τη
Περισσότεροι τρόποι για την κατάχρηση αυτού του προνόμιου στο https://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/privileged-accounts-and-token-privileges#seloaddriverprivilege
SeTakeOwnershipPrivilege
Αυτό είναι παρόμοιο με το SeRestorePrivilege. Η κύρια λειτουργία του επιτρέπει σε ένα διεργασία να αναλάβει την ιδιοκτησία ενός αντικειμένου, παρακάμπτοντας την απαίτηση για συγκεκριμένη πρόσβαση μέσω της παροχής δικαιωμάτων πρόσβασης WRITE_OWNER. Η διαδικασία περιλαμβάνει πρώτα την ασφαλή ανάληψη της ιδιοκτησίας του επιθυμητού κλειδιού καταχώρισης για σκοπούς εγγραφής, και στη συνέχεια την τροποποίηση του DACL για την ενεργοποίηση λειτουργιών εγγραφής.
SeDebugPrivilege
Αυτό το προνόμιο επιτρέπει το debugging άλλων διεργασιών, συμπεριλαμβανομένης της ανάγνωσης και εγγραφής στη μνήμη. Διάφορες στρατηγικές για εισαγωγή μνήμης, ικανές να αποφεύγουν τις περισσότερες λύσεις αντιιστορίας και πρόληψης εισβολών στον κεντρικό υπολογιστή, μπορούν να χρησιμοποιηθούν με αυτό το προνόμιο.
Dump μνήμης
Μπορείτε να χρησιμοποιήσετε το ProcDump από το SysInternals Suite για να καταγράψετε τη μνήμη μιας διεργασίας. Συγκεκριμένα, αυτό μπορεί να εφαρμοστεί στη διεργασία Local Security Authority Subsystem Service (LSASS), η οποία είναι υπεύθυνη για την αποθήκευση διαπιστευτηρίων χρήστη αφού ένας χρήστης έχει συνδεθεί με επιτυχία σε ένα σύστημα.
Στη συνέχεια μπορείτε να φορτώσετε αυτήν την καταγραφή στο mimikatz για να λάβετε κωδικούς πρόσβασης:
RCE
Εάν θέλετε να λάβετε ένα κέλυφος NT SYSTEM
μπορείτε να χρησιμοποιήσετε:
Έλεγχος προνομίων
Τα tokens που εμφανίζονται ως Απενεργοποιημένα μπορούν να ενεργοποιηθούν, μπορείτε να καταχραστείτε τα tokens Ενεργοποιημένα και Απενεργοποιημένα.
Ενεργοποίηση όλων των tokens
Αν έχετε απενεργοποιημένα tokens, μπορείτε να χρησιμοποιήσετε το script EnableAllTokenPrivs.ps1 για να ενεργοποιήσετε όλα τα tokens:
Ή σενάριο ενσωματώνεται σε αυτήν την ανάρτηση.
Πίνακας
Ο πλήρης οδηγός προνομίων δικαιωμάτων στο https://github.com/gtworek/Priv2Admin, η περίληψη παρακάτω θα αναφέρει μόνο τους άμεσους τρόπους εκμετάλλευσης του προνομίου για την απόκτηση μιας συνεδρίας διαχειριστή ή την ανάγνωση ευαίσθητων αρχείων.
Προνόμιο | Επίδραση | Εργαλείο | Διαδρομή εκτέλεσης | Σχόλια |
---|---|---|---|---|
| Διαχειριστής | Εργαλείο τρίτου μέρους | "Θα επέτρεπε σε έναν χρήστη να προσομοιώσει διακριτικά τα δικαιώματα και να αναβαθμίσει σε σύστημα nt χρησιμοποιώντας εργαλεία όπως το potato.exe, rottenpotato.exe και juicypotato.exe" | Ευχαριστώ Aurélien Chalot για την ενημέρωση. Θα προσπαθήσω να το επαναδιατυπώσω σε κάτι πιο σαν συνταγή σύντομα. |
| Απειλή | Εντολές ενσωματωμένες | Διαβάστε ευαίσθητα αρχεία με | - Μπορεί να είναι πιο ενδιαφέρον αν μπορείτε να διαβάσετε το %WINDIR%\MEMORY.DMP
- Το |
| Διαχειριστής | Εργαλείο τρίτου μέρους | Δημιουργία αυθαίρετου διακριτικού συμβόλου συμπεριλαμβανομένων των τοπικών δικαιωμάτων διαχειριστή με το | |
| Διαχειριστής | PowerShell | Διπλασιάστε το σύμβολο | Το σενάριο βρίσκεται στο FuzzySecurity |
| Διαχειριστής | Εργαλείο τρίτου μέρους | 1. Φόρτωση ελαττωματικού πυρήνα οδηγού όπως το | 1. Η ευπάθεια του |
| Διαχειριστής | PowerShell | 1. Εκκίνηση του PowerShell/ISE με το προνόμιο SeRestore παρόν. 2. Ενεργοποίηση του προνομίου με το Enable-SeRestorePrivilege). 3. Μετονομασία του utilman.exe σε utilman.old 4. Μετονομασία του cmd.exe σε utilman.exe 5. Κλείδωμα της κονσόλας και πάτημα Win+U | Η επίθεση μπορεί να ανιχνευθεί από ορισμένο λογισμικό AV. Η εναλλακτική μέθοδος βασίζεται στην αντικατάσταση των δυαδικών αρχείων υπηρεσιών που αποθηκεύονται στο "Αρχεία Προγράμματα" χρησιμοποιώντας το ίδιο προνόμιο |
| Διαχειριστής | Εντολές ενσωματωμένες | 1. | Η επίθεση μπορεί να ανιχνευθεί από ορισμένο λογισμικό AV. Η εναλλακτική μέθοδος βασίζεται στην αντικατάσταση των δυαδικών αρχείων υπηρεσιών που αποθηκεύονται στο "Αρχεία Προγράμματα" χρησιμοποιώντας το ίδιο προνόμιο. |
| Διαχειριστής | Εργαλείο τρίτου μέρους | Διαχειριστείτε τα σύμβολα για να περιλαμβάνουν τα δικαιώματα τοπικού διαχειριστή. Μπορεί να απαιτηθεί το SeImpersonate. Να επαληθευτεί. |
Αναφορά
Ρίξτε μια ματιά σε αυτόν τον πίνακα που ορίζει τα Windows tokens: https://github.com/gtworek/Priv2Admin
Ρίξτε μια ματιά σε αυτό το έγγραφο σχετικά με την εκμετάλλευση προνομίων με tokens.
Last updated