Pentesting Cloud Methodology
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)
Κάθε cloud έχει τις δικές του ιδιαιτερότητες, αλλά γενικά υπάρχουν μερικά κοινά πράγματα που πρέπει να ελέγξει ένας pentester όταν δοκιμάζει ένα περιβάλλον cloud:
Έλεγχοι αναφοράς
Αυτό θα σας βοηθήσει να κατανοήσετε το μέγεθος του περιβάλλοντος και τις υπηρεσίες που χρησιμοποιούνται
Θα σας επιτρέψει επίσης να βρείτε κάποιες γρήγορες κακοδιαρθρώσεις, καθώς μπορείτε να εκτελέσετε τις περισσότερες από αυτές τις δοκιμές με αυτοματοποιημένα εργαλεία
Καταμέτρηση Υπηρεσιών
Πιθανώς δεν θα βρείτε πολλές περισσότερες κακοδιαρθρώσεις εδώ αν έχετε εκτελέσει σωστά τις δοκιμές αναφοράς, αλλά μπορεί να βρείτε κάποιες που δεν αναζητήθηκαν στη δοκιμή αναφοράς.
Αυτό θα σας επιτρέψει να γνωρίζετε τι χρησιμοποιείται ακριβώς στο περιβάλλον cloud
Αυτό θα βοηθήσει πολύ στα επόμενα βήματα
Έλεγχος εκτεθειμένων πόρων
Αυτό μπορεί να γίνει κατά τη διάρκεια της προηγούμενης ενότητας, πρέπει να ανακαλύψετε τα πάντα που είναι δυνητικά εκτεθειμένα στο Διαδίκτυο με κάποιο τρόπο και πώς μπορεί να προσπελαστεί.
Εδώ αναφέρομαι σε χειροκίνητα εκτεθειμένη υποδομή όπως περιπτώσεις με ιστοσελίδες ή άλλες θύρες που είναι εκτεθειμένες, καθώς και για άλλες υπηρεσίες cloud που διαχειρίζονται που μπορούν να ρυθμιστούν για να είναι εκτεθειμένες (όπως βάσεις δεδομένων ή κάδοι)
Στη συνέχεια, θα πρέπει να ελέγξετε αν αυτός ο πόρος μπορεί να εκτεθεί ή όχι (εμπιστευτικές πληροφορίες; ευπάθειες; κακοδιαρθρώσεις στην εκτεθειμένη υπηρεσία;)
Έλεγχος δικαιωμάτων
Εδώ θα πρέπει να ανακαλύψετε όλα τα δικαιώματα κάθε ρόλου/χρήστη μέσα στο cloud και πώς χρησιμοποιούνται
Πάρα πολλές υψηλά προνομιούχες (έλεγχος τα πάντα) λογαριασμοί; Δημιουργημένα κλειδιά που δεν χρησιμοποιούνται;... Οι περισσότερες από αυτές τις ελέγχους θα έπρεπε να έχουν γίνει ήδη στις δοκιμές αναφοράς
Αν ο πελάτης χρησιμοποιεί OpenID ή SAML ή άλλη ομοσπονδία, μπορεί να χρειαστεί να τους ρωτήσετε για περαιτέρω πληροφορίες σχετικά με πώς ανατίθεται κάθε ρόλος (δεν είναι το ίδιο να ανατίθεται ο ρόλος του διαχειριστή σε 1 χρήστη ή σε 100)
Δεν είναι αρκετό να βρείτε ποιους χρήστες έχουν δικαιώματα διαχειριστή "*:*". Υπάρχουν πολλά άλλα δικαιώματα που ανάλογα με τις υπηρεσίες που χρησιμοποιούνται μπορεί να είναι πολύ ευαίσθητα.
Επιπλέον, υπάρχουν πιθανές διαδρομές privesc που πρέπει να ακολουθηθούν εκμεταλλευόμενοι τα δικαιώματα. Όλα αυτά τα πράγματα θα πρέπει να ληφθούν υπόψη και όσες περισσότερες διαδρομές privesc είναι δυνατές θα πρέπει να αναφερθούν.
Έλεγχος Ενοποιήσεων
Είναι πολύ πιθανό ότι ενοποιήσεις με άλλες cloud ή SaaS χρησιμοποιούνται μέσα στο περιβάλλον cloud.
Για ενοποιήσεις του cloud που ελέγχετε με άλλη πλατφόρμα θα πρέπει να ειδοποιήσετε ποιος έχει πρόσβαση για (κακή) χρήση αυτής της ενοποίησης και θα πρέπει να ρωτήσετε πόσο ευαίσθητη είναι η ενέργεια που εκτελείται. Για παράδειγμα, ποιος μπορεί να γράψει σε έναν κάδο AWS από τον οποίο η GCP αποκτά δεδομένα (ρωτήστε πόσο ευαίσθητη είναι η ενέργεια στην GCP που επεξεργάζεται αυτά τα δεδομένα).
Για ενοποιήσεις μέσα στο cloud που ελέγχετε από εξωτερικές πλατφόρμες, θα πρέπει να ρωτήσετε ποιος έχει πρόσβαση εξωτερικά για (κακή) χρήση αυτής της ενοποίησης και να ελέγξετε πώς χρησιμοποιούνται αυτά τα δεδομένα. Για παράδειγμα, αν μια υπηρεσία χρησιμοποιεί μια εικόνα Docker που φιλοξενείται στο GCR, θα πρέπει να ρωτήσετε ποιος έχει πρόσβαση για να την τροποποιήσει και ποιες ευαίσθητες πληροφορίες και πρόσβαση θα αποκτήσει αυτή η εικόνα όταν εκτελείται μέσα σε ένα cloud AWS.
Υπάρχουν διάφορα εργαλεία που μπορούν να χρησιμοποιηθούν για να δοκιμάσουν διαφορετικά περιβάλλοντα cloud. Τα βήματα εγκατάστασης και οι σύνδεσμοι θα αναφέρονται σε αυτήν την ενότητα.
Ένα εργαλείο για να εντοπίσετε κακές ρυθμίσεις και διαδρομές privesc σε clouds και σε διάφορα clouds/SaaS.
Υποστηρίζει AWS, GCP & Azure. Ελέγξτε πώς να ρυθμίσετε κάθε πάροχο στο https://docs.prowler.cloud/en/latest/#aws
AWS, Azure, Github, Google, Oracle, Alibaba
AWS, Azure, GCP, Alibaba Cloud, Oracle Cloud Infrastructure
Κατεβάστε και εγκαταστήστε το Steampipe (https://steampipe.io/downloads). Ή χρησιμοποιήστε το Brew:
AWS, GCP, Azure, DigitalOcean. Απαιτεί python2.7 και φαίνεται ότι δεν συντηρείται.
Το Nessus έχει μια Αξιολόγηση Υποδομής Cloud που υποστηρίζει: AWS, Azure, Office 365, Rackspace, Salesforce. Ορισμένες επιπλέον ρυθμίσεις στο Azure είναι απαραίτητες για να αποκτήσετε ένα Client Id.
Το Cloudlist είναι ένα εργαλείο πολλαπλών cloud για την απόκτηση Περιουσιακών Στοιχείων (Ονόματα Κεντρικών Υπολογιστών, Διευθύνσεις IP) από Παρόχους Cloud.
Η χαρτογράφηση είναι ένα εργαλείο Python που ενοποιεί τα περιουσιακά στοιχεία υποδομής και τις σχέσεις μεταξύ τους σε μια διαισθητική γραφική απεικόνιση που υποστηρίζεται από μια βάση δεδομένων Neo4j.
Το Starbase συλλέγει περιουσιακά στοιχεία και σχέσεις από υπηρεσίες και συστήματα, συμπεριλαμβανομένων υποδομών cloud, εφαρμογών SaaS, ελέγχων ασφαλείας και άλλων, σε μια διαισθητική γραφική απεικόνιση που υποστηρίζεται από τη βάση δεδομένων Neo4j.
Ανακαλύψτε τους πιο προνομιούχους χρήστες στο σαρωμένο περιβάλλον AWS ή Azure, συμπεριλαμβανομένων των AWS Shadow Admins. Χρησιμοποιεί powershell.
Ένα εργαλείο για να βρείτε την υποδομή, τα αρχεία και τις εφαρμογές μιας εταιρείας (στόχος) στους κορυφαίους παρόχους cloud (Amazon, Google, Microsoft, DigitalOcean, Alibaba, Vultr, Linode).
Το CloudFox είναι ένα εργαλείο για να βρείτε εκμεταλλεύσιμες διαδρομές επίθεσης στην υποδομή cloud (προς το παρόν υποστηρίζονται μόνο AWS & Azure με GCP να έρχεται).
Είναι ένα εργαλείο αρίθμησης που προορίζεται να συμπληρώσει το χειροκίνητο pentesting.
Δεν δημιουργεί ή τροποποιεί κανένα δεδομένο μέσα στο περιβάλλον cloud.
Stormspotter δημιουργεί ένα “γράφημα επίθεσης” των πόρων σε μια συνδρομή Azure. Επιτρέπει στις κόκκινες ομάδες και τους pentesters να οπτικοποιήσουν την επιφάνεια επίθεσης και τις ευκαιρίες pivot εντός ενός ενοικιαστή, και ενισχύει τους υπερασπιστές σας για να προσανατολιστούν γρήγορα και να δώσουν προτεραιότητα στην εργασία απόκρισης σε περιστατικά.
Χρειάζεστε Global Admin ή τουλάχιστον Global Admin Reader (αλλά σημειώστε ότι ο Global Admin Reader είναι λίγο περιορισμένος). Ωστόσο, αυτοί οι περιορισμοί εμφανίζονται σε ορισμένα PS modules και μπορούν να παρακαμφθούν με την πρόσβαση στις δυνατότητες μέσω της διαδικτυακής εφαρμογής.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)