ΑρχικήsecurityΕργαλείο BloodHound: Πως το χρησιμοποιούν οι χάκερ

Εργαλείο BloodHound: Πως το χρησιμοποιούν οι χάκερ

Οι χάκερ μπορούν να χρησιμοποιήσουν εργαλεία όπως το BloodHound για να απεικονίσουν τη συντομότερη διαδρομή για την κατοχή του domain σας. Αλλά αυτό δεν σημαίνει ότι δεν μπορείτε να το χρησιμοποιήσετε για να βρείτε και να προστατεύσετε τα αδύναμα σημεία του οργανισμού σας. Δείτε πώς.

Το BloodHound είναι μια εφαρμογή που αναπτύχθηκε με έναν σκοπό: να βρει σχέσεις σε ένα Active Directory (AD) domain για να ανακαλύψει διαδρομές επίθεσης. Αυτό το κάνει χρησιμοποιώντας τη θεωρία γραφημάτων για να βρει τη συντομότερη διαδρομή για να περάσει ένας εισβολέας για να αυξήσει τα προνόμιά του εντός του domain.

Σε αυτό το άρθρο, θα μάθετε πώς να εντοπίζετε κοινά ζητήματα ασφαλείας AD χρησιμοποιώντας το BloodHound.

Για να ακολουθήσετε αυτό το άρθρο, θα πρέπει να έχετε έναν υπολογιστή συνδεδεμένο στο domain με τα Windows 10. Πρέπει επίσης να έχετε συνδεσιμότητα στους domain controllers κατά τη συλλογή δεδομένων.

Δείτε επίσης: Χάκερ κατέθεσε $1 εκατομμύριο σε φόρουμ κυβερνοεγκλήματος για την αγορά zero-day exploits

Πώς λειτουργεί το BloodHound;

Το ίδιο το BloodHound είναι μια εφαρμογή Web που έχει γίνει compiled με το Electron έτσι ώστε να λειτουργεί ως εφαρμογή για υπολογιστές. Η πραγματική του δύναμη βρίσκεται στη βάση δεδομένων Neo4j που χρησιμοποιεί. Το Neo4j είναι ένα ειδικό είδος βάσης δεδομένων – είναι μια βάση δεδομένων γραφημάτων που μπορεί εύκολα να ανακαλύψει σχέσεις και να υπολογίσει τη συντομότερη διαδρομή μεταξύ αντικειμένων χρησιμοποιώντας τα links της.

Το παραπάνω σχήμα δείχνει ένα παράδειγμα του πώς το BloodHound χαρτογραφεί σχέσεις με τον AD domain admin χρησιμοποιώντας τους αλγόριθμους θεωρίας γραφημάτων στο Neo4j.

Το BloodHound συλλέγει δεδομένα χρησιμοποιώντας έναν ingestor που ονομάζεται SharpHound. Έρχεται ως μια κανονική γραμμή εντολών .exe ή PowerShell script που περιέχει την ίδια συναρμολόγηση (αν και συγκαλυμμένη) με το .exe. Καθώς τρέχει, το SharpHound συλλέγει όλες τις πληροφορίες που μπορεί για το AD και τους χρήστες, τους υπολογιστές και τις ομάδες του. Συλλέγει ακόμη και πληροφορίες για ενεργές περιόδους σύνδεσης, δικαιώματα AD και πολλά άλλα χρησιμοποιώντας μόνο τα δικαιώματα ενός κανονικού χρήστη.

Το SharpHound εξάγει αρχεία JSON τα οποία στη συνέχεια τροφοδοτούνται στη βάση δεδομένων Neo4j και αργότερα οπτικοποιούνται από το GUI. Αυτό σημαίνει επίσης ότι ένας εισβολέας μπορεί να ανεβάσει αυτά τα αρχεία και να τα αναλύσει με το BloodHound οπουδήποτε.

Τώρα ας δούμε πώς να ξεκινήσετε να χρησιμοποιείτε το BloodHound με Windows για να ανακαλύψετε τις ευπάθειες που μπορεί να έχετε στο AD σας.

Δείτε επίσης: Gamers να προσέχετε, είστε στο στόχαστρο των χάκερ!

Λήψη και εγκατάσταση του BloodHound και του Neo4j

Το να ξεκινήσετε με το BloodHound είναι αρκετά απλό, χρειάζεστε μόνο την τελευταία έκδοση από το GitHub και μια εγκατάσταση βάσης δεδομένων Neo4j.

Πρώτα, κατεβάστε την τελευταία έκδοση του BloodHound από τη σελίδα κυκλοφορίας του GitHub. Δεδομένου ότι στοχεύουμε τα Windows σε αυτήν τη στήλη, θα πραγματοποιήσουμε λήψη του αρχείου που ονομάζεται BloodHound-win32-x64.zip.

BloodHound

Εξάγετε το αρχείο που μόλις κατεβάσατε σε ένα φάκελο. Εμείς κάναμε extract την δική μας σε *C:.

Μεταβείτε στο φάκελο Ingestors στο BloodHound GitHub και κατεβάστε το SharpHound.exe σε ένα φάκελο της επιλογής σας. Εμείς δημιουργήσαμε το φάκελο *C: και κάναμε λήψη του .exe εκεί.

Τώρα, κατεβάστε και εκτελέστε το Neo4j Desktop για Windows. Αποφασίστε εάν θέλετε να το εγκαταστήσετε για όλους τους χρήστες ή μόνο για εσάς. (Αυτό εγκαθίσταται στο φάκελο AppData.) Πατήστε Next μέχρι να ξεκινήσει η εγκατάσταση. Όταν ολοκληρωθεί η εγκατάσταση, βεβαιωθείτε ότι το Run Neo4J Desktop είναι επιλεγμένο και πατήστε Finish.

Το Neo4j Desktop GUI ξεκινά τώρα. Επιλέξτε τη διαδρομή όπου θέλετε το Neo4j να αποθηκεύει τα δεδομένα του και πατήστε Confirm.

Εάν δεν θέλετε να καταχωρίσετε το αντίγραφο του Neo4j, επιλέξτε “No thanks! Maybe later.” (Θα εξακολουθεί να είναι δωρεάν.) Το Neo4j εκτελεί μια γρήγορη αυτόματη ρύθμιση. Η εγκατάσταση έχει σχεδόν ολοκληρωθεί.

BloodHound

Στην καρτέλα Projects, μετονομάστε το προεπιλεγμένο έργο σε “BloodHound”.

BloodHound

Πατήστε το κενό τετράγωνο Add Graph και επιλέξτε Create a Local Graph.

BloodHound

Ονομάστε το γράφημα σε “BloodHound” και ορίστε έναν μακρύ και περίπλοκο κωδικό πρόσβασης. Θυμηθείτε: Αυτή η βάση δεδομένων θα περιέχει έναν χάρτη για τον τρόπο ιδιοκτησίας του domain σας.

Αφού δημιουργηθεί, πατήστε Start για να μπορέσουμε αργότερα να συνδέσουμε το BloodHound με αυτό.

Τώρα ολοκληρώσατε τη λήψη και την εγκατάσταση του BloodHound και του Neo4j. Τώρα ήρθε η ώρα να ξεκινήσετε με το διασκεδαστικό μέρος: τη συλλογή δεδομένων από το domain σας και την οπτικοποίησή τους χρησιμοποιώντας το BloodHound.

Δείτε επίσης: Γιατί η Microsoft έδωσε $30.000 σε μια 20χρονη αυτοδίδακτη χάκερ;

Συλλογή των δεδομένων

Τώρα ήρθε η ώρα να συλλέξετε τα δεδομένα που χρειάζεται το BloodHound χρησιμοποιώντας το SharpHound.exe που κατεβάσαμε στο *C:. Θα χρησιμοποιήσουμε το SharpHound.exe, αλλά μη διστάσετε να διαβάσετε το wiki BloodHound εάν θέλετε να χρησιμοποιήσετε την έκδοση PowerShell.

Ανοίξτε το PowerShell ως μη προνομιούχος χρήστης. Δημιουργήστε ένα directory για τα δεδομένα που δημιουργούνται από το SharpHound και ορίστε το ως τρέχον directory. (Δημιούργησαμε το directory C :.)

Τώρα ήρθε η ώρα να ξεκινήσετε τη συλλογή δεδομένων. Πληκτρολογήστε C:.exe -c all” για να ξεκινήσετε τη συλλογή δεδομένων. Όταν ολοκληρωθεί η συλλογή, μπορείτε να δείτε ότι το SharpHound έχει δημιουργήσει ένα αρχείο με το όνομα yyyyMMddhhmmss_BloodHound.zip. Εκεί θα μεταφορτώσουμε τη βάση δεδομένων Neo4j του BloodHound.

BloodHound

Λάβετε υπόψη ότι αυτό βρίσκεται σε δοκιμαστικό domain και ότι η συλλογή δεδομένων σε σενάρια πραγματικής ζωής θα είναι πολύ πιο αργή.

Η συλλογή δεδομένων έχει πλέον ολοκληρωθεί! Τώρα ήρθε η ώρα να την ανεβάσετε στο BloodHound και να αρχίσετε να θέτετε queries.

Μεταφόρτωση δεδομένων και δημιουργία ερωτημάτων

Τώρα που έχουμε εγκαταστήσει και κατεβάσει το BloodHound, το Neo4j και το SharpHound, ήρθε η ώρα να εκκινήσετε το BloodHound για πρώτη φορά. Εκκινήστε το BloodHound.exe που βρίσκεται στο *C:*. Συνδεθείτε με το όνομα χρήστη neo4j και τον κωδικό πρόσβασης που έχετε ορίσει στη βάση δεδομένων γραφήματος Neo4j κατά την εγκατάσταση του Neo4j.

Η βάση δεδομένων Neo4j είναι κενή στην αρχή, οπότε επιστρέφει, “No data returned from query.” Ανεβάστε το αρχείο .zip που παρήγαγε το SharpHound πατώντας Upload και επιλέξτε το αρχείο.

BloodHound

Το BloodHound θα εισάγει τα αρχεία JSON που περιέχονται στο .zip στο Neo4j. Τώρα θα εμφανιστεί μια οθόνη που μοιάζει με αυτήν, μια προεπιλεγμένη προβολή που δείχνει όλους τους domain admins:

Ο αριθμός των domain admin groups θα διαφέρει ανάλογα με τον αριθμό των domains που έχετε ή έχετε σαρώσει με το SharpHound.

Τώρα ας εκτελέσουμε ένα ενσωματωμένο query για να βρούμε τη συντομότερη διαδρομή προς τον domain admin. Μπορούμε να το κάνουμε πατώντας το εικονίδιο στα αριστερά της γραμμής αναζήτησης, κάνοντας κλικ στα Queries και στη συνέχεια κάνοντας κλικ στην επιλογή Find Shortest Paths to Domain Admin.

BloodHound

Τα παραπάνω προέρχονται από τα δεδομένα του BloodHound.

Μπορούμε είτε να δημιουργήσουμε το δικό μας query είτε να επιλέξουμε ένα από τα ενσωματωμένα.

Εύρεση της συντομότερης διαδρομής από έναν χρήστη

Ας υποθέσουμε ότι είστε χάκερ και ότι ψαρέψατε τον κωδικό πρόσβασης από έναν χρήστη που ονομάζεται yfan@tokyo.japan.local ή εγκαταστήσατε ένα backdoor στον υπολογιστή του. Θέλουμε να μάθουμε αν μπορούμε να πάρουμε τον domain admin στο domain tokyo.japan.local με τα credentials του yfan.

Κάντε κλικ στο εικονίδιο PathFinding στα δεξιά της γραμμής αναζήτησης.

Εισάγετε τον χρήστη ως τον κόμβο εκκίνησης και το domain admin group ως στόχο.

Αυτά είναι τα μόνα δύο βήματα που χρειάζονται. Τώρα παρουσιάζουμε αυτόν τον χάρτη:

BloodHound

Εδώ μπορούμε να δούμε ότι το yfan τυχαίνει να έχει άδεια ForceChangePassword σε χρήστες domain admin, οπότε η κατοχή domain admin σε αυτό το περιβάλλον είναι μόνο μια εντολή μακριά.

Οι ευπάθειες όπως αυτές είναι πιο συχνές από ό, τι νομίζετε και είναι συνήθως ακούσιες.

Περίληψη

Τώρα έχετε κάποια βασική γνώση σχετικά με τον τρόπο δημιουργίας ενός πλήρους χάρτη με το συντομότερο path για την κατοχή του domain σας. Μερικά από αυτά θα ήταν σχεδόν αδύνατο να βρεθούν χωρίς ένα εργαλείο όπως το BloodHound και οι διορθώσεις είναι συνήθως αρκετά γρήγορες και εύκολες.

Οι χάκερ το χρησιμοποιούν για να σας επιτεθούν. θα πρέπει να το χρησιμοποιείτε τακτικά για την προστασία του Active Directory.

Πηγή πληροφοριών: mcpmag.com

Teo Ehc
Teo Ehchttps://www.secnews.gr
Be the limited edition.

Εγγραφή στο Newsletter

* indicates required

FOLLOW US

LIVE NEWS