Privilege Escalation με PowerShell και SET


Σε προηγούμενο άρθρο χρησιμοποιήσαμε το  PowerShell Empire v2.3.0  για Post Exploitation των Windows. Το ίδιο μπορεί να γίνει και με ένα από τα πιο δημοφιλή εργαλεία που ονομάζεται SETOOLKIT και είναι ήδη προεγκατεστημένο σε κάθε διανομή Kali Linux.

Για να το κάνετε, θα πρέπει να ακολουθήσετε τα παρακάτω βήματα:

Πριν ξεκινήσετε, βεβαιωθείτε ότι πρέπει να έχετε εγκαταστήσει την τελευταία έκδοση του SETOOLKIT στο μηχάνημα Kali Linux και η εντολή εκκίνησης του SET είναι “setoolkit“.

Καθώς πατάτε enter, θα εμφανιστεί μια οθόνη καλωσορίσματος με την ακόλουθη λίστα επιλογών για επιλογή:

  • 1) Social-Engineering Attacks
  • 2) Penetration Testing (Fast-Track)
  • 3) Third Party Modules
  • 4) Update the Social-Engineer Toolkit
  • 5) Update SET Configuration
  • 6) Help, Credits, and About
  •  
  • 99) Exit the Social-Engineer Toolkit

Από το παραπάνω μενού, θα επιλέξουμε Social-Engineering Attacks, δηλαδή την Επιλογή 1

Τώρα καθώς πατάτε το 1, θα εμφανιστούν νέες επιλογές στην ενότητα Social-Engineering Attacks που είναι:

  • 1) Spear-Phishing Attack Vectors
  • 2) Website Attack Vectors
  • 3) Infectious Media Generator
  • 4) Create a Payload and Listener
  • 5) Mass Mailer Attack
  • 6) Arduino-Based Attack Vector
  • 7) Wireless Access Point Attack Vector
  • 8) QRCode Generator Attack Vector
  • 9) Powershell Attack Vectors
  • 10) SMS Spoofing Attack Vector
  • 11) Third Party Modules
  •  
  • 99) Return back to main menu.

Εδώ λοιπόν, θα επιλέξουμε την επιλογή 4, δηλαδή Create a Payload and Listene , όπου θα δημιουργήσουμε ένα κακόβουλο payload, που θα το στείλουμε με οποιοδήποτε μέσο (Social Engineering, μέσω Facebook, μέσω Twitter, μέσω email κ.λ.π.).

Η επόμενη οθόνη θα αναφέρει τον αριθμό των payloads με βάση την επιλογή του exploit.

Εδώ το καλύτερο payload είναι το Windows Reverse_TCP Meterpreter,  δηλαδή η επιλογή 2 που ανοίγει αμέσως ένα meterpreter shell έναντι του στόχου όποτε εκτελεί το αρχείο σας.

Επιπλέον, κάθε payload έχει τη δική του χρήση και τις δικές του επιλογές και από αυτό το reverse TCP payload είναι ένα από τα καλύτερα payloads.

Στη συνέχεια, εισαγάγετε τη διεύθυνση IP του localhost και τον αριθμό PORT (443) όπως φαίνεται παρακάτω:

Περιμένετε 1-3 λεπτά ώσπου το εργαλείο να δημιουργήσει αυτόματα ένα συμβατό payload και να ξεκινήσει από μόνο του την υπηρεσία listener όπως φαίνεται παρακάτω

Και στο τέλος, ένας reverse TCP handler θα ξεκινήσει έναντι του στόχου.

Στο παρακάτω στιγμιότυπο οθόνης, φαίνεται ότι έχει δημιουργηθεί ένα νέο αρχείο payload.exe, το οποίο πρέπει να εγκαταστήσετε περαιτέρω το ίδιο σε άλλα μηχανήματα ή VM.

Τώρα, όπως μπορείτε να δείτε, πήρατε αμέσως ένα meterpreter session και πληκτρολογώντας την εντολή “sysinfo” σας δείχνει όλες τις πληροφορίες σχετικά με το λειτουργικό σας στόχο.

Τώρα εκτελέστε την εντολή “ps” για να δείτε όλες τις τρέχουσες διαδικασίες και σημειώστε την τιμή PID της διαδικασίας explorer.exe.

Εδώ θα μετεγκαταστήσουμε το Meterpreter στη διαδικασία explorer.exe, έτσι ώστε να μην χρειάζεται να ανησυχούμε για την επαναλαμβανόμενη διαδικασία που θα επαναφέρει και θα κλείσει τη συνεδρία μας.

Για να το μετεγκαταστήσετε, απλώς πληκτρολογήστε την ακόλουθη εντολή:

Εντολή: migrate <PID>

Στη συνέχεια, πληκτρολογήστε την εντολή getuid  όπου θα σας εμφανίσει τον χρήστη στον οποίο εκτελείται ο διακομιστής Meterpreter όπως στον κεντρικό υπολογιστή.

Πληκτρολογήστε επίσης την εντολή “shell” για να μεταβείτε στη λειτουργία Shell Command Windows όπου μπορείτε να εκτελέσετε όλες τις εντολές CMD όπως dir, net user κ.λ.π.

Στη συνέχεια, εάν θέλετε να δείτε όλες τις πληροφορίες του τρέχοντος χρήστη, τότε πληκτρολογήστε “net user <Username>” όπου μπορείτε να σημειώσετε την ενότητα “Local Group Memberships” (που είναι διαχειριστής) όπως φαίνεται παρακάτω:

Συχνά, ειδικά με εκμεταλλεύσεις από πλευράς client, θα διαπιστώσετε ότι το session έχει περιορισμένα δικαιώματα χρήστη. Αυτό μπορεί να περιορίσει σοβαρά τις ενέργειες που μπορείτε να εκτελέσετε στο απομακρυσμένο σύστημα, όπως dumping κωδικών πρόσβασης, χειρισμός του μητρώου, εγκατάσταση backdoors κ.λ.π.

Ευτυχώς, το Metasploit έχει ένα Meterpreter script το “getsystem”, το οποίο θα χρησιμοποιεί διάφορες τεχνικές για να επιχειρήσει να αποκτήσει προνόμια επιπέδου SYSTEM στο απομακρυσμένο σύστημα.

Απλά κάνουμε έξοδο από shell και πληκτρολογούμε use priv” μαζί με την εντολή “getsystem”.

Θα αφήσουμε το Metasploit να προσπαθήσει να κάνει τη δύσκολη δουλειά για εμάς, τρέχοντας το “getsystem” χωρίς καμία άλλη επιλογή. Το script θα χρησιμοποιήσει κάθε διαθέσιμη μέθοδο, σταματώντας όταν η διαδικασία θα είναι επιτυχής.

Μέσα σε ριπή οφθαλμού, η session σας θα λάβει προνόμια SYSTEM, αλλά αν όχι, τότε θα πρέπει να χρησιμοποιήσετε το Empire Powershell Framework για κλιμάκωση προνομίων όπως έχουμε εξηγήσει ήδη.

Επιστρέψτε στον κύριο κατάλογο του Empire και δώστε εκτελέσιμα δικαιώματα στο empire πληκτρολογώντας “chmod + x empire” και, στη συνέχεια εκτελέστε το  ./empire.

Βλέπουμε την οθόνη καλωσορίσματος του Empire Project που δείχνει ξεκάθαρα ότι, υπάρχουν 285 ενότητες που περιλαμβάνουν listeners, agents, mimikatz κ.λ.π.

Για να δείτε τις διαθέσιμες ενότητες, πληκτρολογήστε  usemodule  [tab] . Για την αναζήτηση ονομάτων / περιγραφών ενότητας, χρησιμοποιήστε το  searchmodule privesc  και τα αντίστοιχα ονόματα / περιγραφές των λειτουργικών μονάδων που θα εξάγονται.

Το πρώτο πράγμα που πρέπει να κάνετε είναι να δημιουργήσετε έναν τοπικό listener. Η εντολή των listeners θα σας μεταφέρει στο μενού διαχείρισης των listeners.

Η εντολή uselistener θα σας επιτρέψει να επιλέξετε τον τύπο του listener. Εάν πατήσετε το TAB μετά από αυτήν την εντολή θα εμφανιστούν όλοι οι διαθέσιμοι τύποι των listeners. Έτσι, σε αυτήν την περίπτωση, θα χρησιμοποιήσουμε τη λειτουργική μονάδα listener http που μπορείτε να χρησιμοποιήσετε πληκτρολογώντας “uselistener http” και στη συνέχεια πληκτρολογήστε “execute” για εκτέλεση.

Για να δείτε όλους τους ενεργούς listeners, η εντολή είναι “listeners” όπως φαίνεται στο παραπάνω στιγμιότυπο οθόνης.

Στη συνέχεια, πρέπει να δημιουργήσετε ένα PowerShell script με τη βοήθεια του Launcher πληκτρολογώντας “Launcher PowerShell http

Η παραπάνω εντολή θα δημιουργήσει ένα Powerhell script, το οποίο πρέπει να εκτελέσετε στο απομακρυσμένο σύστημα προορισμού σας με τη βοήθεια του meterprete.


Διαβάστε τις Τεχνολογικές Ειδήσεις από όλο τον κόσμο, με την εγκυρότητα του iGuRu.gr

Ακολουθήσετε μας στο Google News iGuRu.gr at Google news