GCP - Cloud Shell Persistence
Cloud Shell
Για περισσότερες πληροφορίες ελέγξτε:
GCP - Cloud Shell EnumΜόνιμη Πίσω Πόρτα
Το Google Cloud Shell σας παρέχει πρόσβαση στη γραμμή εντολών στους πόρους σας στο cloud απευθείας από τον περιηγητή σας χωρίς καμία σχετική χρέωση.
Μπορείτε να έχετε πρόσβαση στο Cloud Shell της Google από τη web κονσόλα ή εκτελώντας το gcloud cloud-shell ssh
.
Αυτή η κονσόλα έχει μερικές ενδιαφέρουσες δυνατότητες για επιτιθέμενους:
Οποιοσδήποτε χρήστης της Google με πρόσβαση στο Google Cloud έχει πρόσβαση σε ένα πλήρως πιστοποιημένο παράδειγμα Cloud Shell (Οι λογαριασμοί Υπηρεσιών μπορούν, ακόμα και αν είναι Ιδιοκτήτες του οργανισμού).
Το συγκεκριμένο παράδειγμα θα διατηρήσει τον κατάλογο του αρχικού χρήστη για τουλάχιστον 120 ημέρες αν δεν υπάρξει καμία δραστηριότητα.
Δεν υπάρχουν δυνατότητες για έναν οργανισμό να παρακολουθήσει τη δραστηριότητα αυτού του παραδείγματος.
Αυτό σημαίνει βασικά ότι ένας επιτιθέμενος μπορεί να τοποθετήσει μια πίσω πόρτα στον κατάλογο του χρήστη και όσο ο χρήστης συνδέεται στο GC Shell κάθε 120 ημέρες τουλάχιστον, η πίσω πόρτα θα επιβιώσει και ο επιτιθέμενος θα λάβει ένα κέλυφος κάθε φορά που το εκτελεί απλά κάνοντας:
Υπάρχει ένα άλλο αρχείο στον φάκελο home που ονομάζεται .customize_environment
που, αν υπάρχει, θα εκτελείται κάθε φορά που ο χρήστης έχει πρόσβαση στο cloud shell (όπως στην προηγούμενη τεχνική). Απλά εισάγετε την προηγούμενη πίσω πόρτα ή μια παρόμοια για να διατηρήσετε την επιμονή όσο ο χρήστης χρησιμοποιεί "συχνά" το cloud shell:
Είναι σημαντικό να σημειωθεί ότι την πρώτη φορά που εκτελείται μια ενέργεια που απαιτεί πιστοποίηση, εμφανίζεται ένα παράθυρο εξουσιοδότησης στον περιηγητή του χρήστη. Αυτό το παράθυρο πρέπει να γίνει αποδεκτό πριν εκτελεστεί η εντολή. Αν εμφανιστεί ένα απροσδόκητο παράθυρο, μπορεί να προκαλέσει υποψίες και ενδεχομένως να θέσει σε κίνδυνο τη μέθοδο διατήρησης που χρησιμοποιείται.
Αυτό είναι το παράθυρο που εμφανίζεται κατά την εκτέλεση της εντολής gcloud projects list
από το cloud shell (ως επιτιθέμενος) που προβάλλεται στη συνεδρία χρήστη του περιηγητή:
Ωστόσο, αν ο χρήστης έχει χρησιμοποιήσει ενεργά το cloudshell, το παράθυρο δεν θα εμφανιστεί και μπορείτε να συλλέξετε τα τεκμήρια του χρήστη με:
Πώς γίνεται η σύνδεση SSH
Βασικά, χρησιμοποιούνται αυτές οι 3 κλήσεις API:
https://content-cloudshell.googleapis.com/v1/users/me/environments/default:addPublicKey [POST] (θα σας κάνει να προσθέσετε το δημόσιο κλειδί που δημιουργήσατε τοπικά)
https://content-cloudshell.googleapis.com/v1/users/me/environments/default:start [POST] (θα σας κάνει να ξεκινήσετε την εικονική μηχανή)
https://content-cloudshell.googleapis.com/v1/users/me/environments/default [GET] (θα σας πει τη διεύθυνση IP του Google Cloud Shell)
Μπορείτε όμως να βρείτε περισσότερες πληροφορίες στο https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key
Αναφορές
Last updated