GCP - Compute Post Exploitation
Last updated
Last updated
Για περισσότερες πληροφορίες σχετικά με το Compute και το VPC (Networking) ελέγξτε:
Αυτό θα επιτρέπει σε έναν επιτιθέμενο να έχει πρόσβαση στα δεδομένα που περιέχονται σε ήδη υπάρχουσες εικόνες ή να δημιουργήσει νέες εικόνες εκτελούμενων VMs και να έχει πρόσβαση στα δεδομένα τους χωρίς να έχει πρόσβαση στο εκτελούμενο VM.
Είναι δυνατόν να εξαχθεί μια εικόνα VM σε ένα bucket και στη συνέχεια να την κατεβάσετε και να την προσαρτήσετε τοπικά με την εντολή:
Για να εκτελεστεί αυτή η ενέργεια, ο επιτιθέμενος μπορεί να χρειαστεί δικαιώματα πάνω στον αποθηκευτικό κάδο και σίγουρα δικαιώματα πάνω στο cloudbuild καθώς είναι το service που θα ζητηθεί να εκτελέσει την εξαγωγή.
Επιπλέον, για να λειτουργήσει αυτό, ο λογαριασμός cloudbuild SA και ο λογαριασμός compute SA χρειάζονται προνομιούχες άδειες.
Ο λογαριασμός cloudbuild SA <project-id>@cloudbuild.gserviceaccount.com
χρειάζεται:
roles/iam.serviceAccountTokenCreator
roles/compute.admin
roles/iam.serviceAccountUser
Και ο λογαριασμός SA <project-id>-compute@developer.gserviceaccount.com
χρειάζεται:
roles/compute.storageAdmin
roles/storage.objectAdmin
Δεν είναι δυνατή η άμεση εξαγωγή snapshots και δίσκων, αλλά είναι δυνατό να μετατραπεί ένα snapshot σε έναν δίσκο, ένας δίσκος σε μια εικόνα και ακολουθώντας την προηγούμενη ενότητα, να εξαχθεί αυτή η εικόνα για επιθεώρηση τοπικά.
Με σκοπό την πρόσβαση στα δεδομένα που αποθηκεύονται σε μια εικόνα ή μέσα σε ένα εκτελούμενο VM από όπου ένας επιτιθέμενος έχει δημιουργήσει μια εικόνα, είναι δυνατό να παραχωρηθεί πρόσβαση σε έναν εξωτερικό λογαριασμό πάνω στην εικόνα:
και στη συνέχεια δημιουργήστε ένα νέο VM από αυτό:
Εάν δεν μπορείτε να δώσετε πρόσβαση στον εξωτερικό σας λογαριασμό στην εικόνα, μπορείτε να ξεκινήσετε έναν εικονικό υπολογιστή (VM) χρησιμοποιώντας αυτήν την εικόνα στο έργο του θύματος και να κάνετε τα μεταδεδομένα να εκτελέσουν ένα αντίστροφο κέλυφος (reverse shell) για να αποκτήσετε πρόσβαση στην εικόνα προσθέτοντας την παράμετρο:
Με σκοπό την πρόσβαση στα δεδομένα που αποθηκεύονται σε ένα δίσκο ή ένα snapshot, μπορείτε να μετατρέψετε το snapshot σε δίσκο, τον δίσκο σε εικόνα και να ακολουθήσετε τα προηγούμενα βήματα.
Ή μπορείτε να χορηγήσετε πρόσβαση σε έναν εξωτερικό λογαριασμό στον δίσκο (αν η αρχική κατάσταση είναι ένα snapshot, χορηγήστε πρόσβαση στο snapshot ή δημιουργήστε έναν δίσκο από αυτόν):
Συνδέστε το δίσκο σε μια εικονική μηχανή:
Τοποθετήστε το δίσκο μέσα στην εικονική μηχανή (VM):
Συνδεθείτε με SSH στην VM:
Αναγνωρίστε τον δίσκο: Μόλις βρεθείτε μέσα στην VM, αναγνωρίστε τον νέο δίσκο από τη λίστα των συσκευών δίσκου. Συνήθως, μπορείτε να τον βρείτε ως /dev/sdb
, /dev/sdc
, κλπ.
Μορφοποιήστε και τοποθετήστε τον δίσκο (αν είναι νέος ή ακατέργαστος δίσκος):
Δημιουργήστε ένα σημείο προσάρτησης:
Προσαρτήστε τον δίσκο:
Εάν δεν μπορείτε να δώσετε πρόσβαση σε ένα εξωτερικό έργο στο αντίγραφο ασφαλείας ή τον δίσκο, μπορεί να χρειαστεί να εκτελέσετε αυτές τις ενέργειες μέσα σε μια εικονική μηχανή στο ίδιο έργο με το αντίγραφο ασφαλείας/δίσκο.