GCP - Cloud Build Unauthenticated Enum
Last updated
Last updated
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Για περισσότερες πληροφορίες σχετικά με το Cloud Build ελέγξτε:
GCP - Cloud Build EnumΕάν αποκτήσετε πρόσβαση εγγραφής σε ένα αποθετήριο που περιέχει ένα αρχείο με όνομα cloudbuild.yml
, θα μπορούσατε να backdoor αυτό το αρχείο, το οποίο καθορίζει τις εντολές που θα εκτελούνται μέσα σε ένα Cloud Build και να εξάγετε τα μυστικά, να συμβιβάσετε ό,τι γίνεται και επίσης να συμβιβάσετε τον λογαριασμό υπηρεσίας Cloud Build.
Σημειώστε ότι το GCP έχει την επιλογή να επιτρέπει στους διαχειριστές να ελέγχουν την εκτέλεση των συστημάτων κατασκευής από εξωτερικά PRs μέσω του "Comment Control". Το Comment Control είναι μια δυνατότητα όπου οι συνεργάτες/ιδιοκτήτες έργων πρέπει να σχολιάσουν “/gcbrun” για να ενεργοποιήσουν την κατασκευή κατά του PR και χρησιμοποιώντας αυτή τη δυνατότητα αποτρέπει εγγενώς οποιονδήποτε στο διαδίκτυο από το να ενεργοποιήσει τα συστήματα κατασκευής σας.
Για κάποιες σχετικές πληροφορίες μπορείτε να ελέγξετε τη σελίδα σχετικά με το πώς να επιτεθείτε σε Github Actions (παρόμοια με αυτό):
Abusing Github ActionsΌταν ο ενεργοποιητής είναι PR επειδή οποιοσδήποτε μπορεί να εκτελέσει PRs σε δημόσια αποθετήρια θα ήταν πολύ επικίνδυνο να επιτρέπεται απλώς η εκτέλεση του ενεργοποιητή με οποιοδήποτε PR. Επομένως, από προεπιλογή, η εκτέλεση θα είναι μόνο αυτόματη για τους ιδιοκτήτες και τους συνεργάτες, και προκειμένου να εκτελέσετε τον ενεργοποιητή με PR άλλων χρηστών, ένας ιδιοκτήτης ή συνεργάτης πρέπει να σχολιάσει /gcbrun
.
Επομένως, εάν αυτό είναι ρυθμισμένο σε Not required
, ένας επιτιθέμενος θα μπορούσε να εκτελέσει ένα PR στο branch που θα ενεργοποιήσει την εκτέλεση προσθέτοντας την κακόβουλη εκτέλεση κώδικα στο cloudbuild.yml
αρχείο και να συμβιβάσει την εκτέλεση cloudbuild (σημειώστε ότι το cloudbuild θα κατεβάσει τον κώδικα ΑΠΟ το PR, οπότε θα εκτελέσει το κακόβουλο cloudbuild.yml
).
Επιπλέον, είναι εύκολο να δείτε αν χρειάζεται να εκτελεστεί κάποια εκτέλεση cloudbuild όταν στέλνετε ένα PR επειδή εμφανίζεται στο Github:
Έτσι, ακόμη και αν το cloudbuild δεν εκτελείται, ο επιτιθέμενος θα μπορεί να δει το όνομα του έργου ενός GCP έργου που ανήκει στην εταιρεία.
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)