Az - State Configuration RCE
Ελέγξτε την πλήρη ανάρτηση στο: https://medium.com/cepheisecurity/abusing-azure-dsc-remote-code-execution-and-privilege-escalation-ab8c35dd04fe
Περίληψη Προετοιμασίας Υποδομής Απομακρυσμένου Διακομιστή (C2) και Βημάτων
Επισκόπηση
Η διαδικασία περιλαμβάνει τη δημιουργία μιας απομακρυσμένης υποδομής διακομιστή για τη φιλοξενία ενός τροποποιημένου φορτίου Nishang Invoke-PowerShellTcp.ps1
, με το όνομα RevPS.ps1
, σχεδιασμένου για να παρακάμπτει τον Windows Defender. Το φορτίο εξυπηρετείται από ένα μηχάνημα Kali Linux με διεύθυνση IP 40.84.7.74
χρησιμοποιώντας ένα απλό HTTP server Python. Η λειτουργία εκτελείται μέσω αρκετών βημάτων:
Βήμα 1 — Δημιουργία Αρχείων
Απαιτούμενα Αρχεία: Χρειάζονται δύο scripts PowerShell:
reverse_shell_config.ps1
: Ένα αρχείο Desired State Configuration (DSC) που ανακτά και εκτελεί το φορτίο. Είναι διαθέσιμο στο GitHub.push_reverse_shell_config.ps1
: Ένα script για τη δημοσίευση της διαμόρφωσης στον εικονικό υπολογιστή, διαθέσιμο στο GitHub.
Προσαρμογή: Οι μεταβλητές και οι παράμετροι σε αυτά τα αρχεία πρέπει να προσαρμοστούν στο συγκεκριμένο περιβάλλον του χρήστη, συμπεριλαμβανομένων των ονομάτων πόρων, των διαδρομών αρχείων και των αναγνωριστικών διακομιστή/φορτίου.
Βήμα 2 — Συμπίεση Αρχείου Διαμόρφωσης
Το
reverse_shell_config.ps1
συμπιέζεται σε ένα αρχείο.zip
, καθιστώντας το έτοιμο για μεταφορά στο Azure Storage Account.
Βήμα 3 — Ορισμός Περιβάλλοντος Αποθήκευσης & Μεταφόρτωση
Το συμπιεσμένο αρχείο διαμόρφωσης ανεβάζεται σε ένα προκαθορισμένο δοχείο αποθήκευσης Azure, azure-pentest, χρησιμοποιώντας την εντολή Set-AzStorageBlobContent του Azure.
Βήμα 4 — Προετοιμασία του Kali Box
Ο διακομιστής Kali κατεβάζει το φορτίο RevPS.ps1 από ένα αποθετήριο GitHub.
Το σενάριο επεξεργάζεται για να καθορίσει τον στόχο της Windows VM και τη θύρα για το αντίστροφο κέλυφος.
Βήμα 5 — Δημοσίευση Αρχείου Διαμόρφωσης
Το αρχείο διαμόρφωσης εκτελείται, με αποτέλεσμα το σενάριο αντίστροφου κελύφους να εγκαθίσταται στην καθορισμένη τοποθεσία στην Windows VM.
Βήμα 6 — Φιλοξενία Φορτίου και Ρύθμιση Ακροατή
Ένας Python SimpleHTTPServer ξεκινά για να φιλοξενήσει το φορτίο, μαζί με έναν ακροατή Netcat για την καταγραφή εισερχόμενων συνδέσεων.
Ο προγραμματισμένος έργος εκτελεί το φορτίο, επιτυγχάνοντας προνόμια επιπέδου SYSTEM.
Συμπέρασμα
Η επιτυχής εκτέλεση αυτής της διαδικασίας ανοίγει πολλές δυνατότητες για περαιτέρω ενέργειες, όπως αποκομίζοντας διαπιστευτήρια ή επεκτείνοντας την επίθεση σε πολλές εικονικές μηχανές. Ο οδηγός ενθαρρύνει τη συνεχή μάθηση και δημιουργικότητα στον τομέα του Azure Automation DSC.
Last updated