GCP - Cloud SQL Enum
Reading time: 5 minutes
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Grundinformationen
Google Cloud SQL ist ein verwalteter Dienst, der die Einrichtung, Wartung und Verwaltung von relationalen Datenbanken wie MySQL, PostgreSQL und SQL Server auf der Google Cloud Platform vereinfacht und die Notwendigkeit beseitigt, Aufgaben wie Hardwarebereitstellung, Datenbankeinrichtung, Patchen und Backups zu übernehmen.
Wichtige Funktionen von Google Cloud SQL sind:
- Vollständig verwaltet: Google Cloud SQL ist ein vollständig verwalteter Dienst, was bedeutet, dass Google Wartungsaufgaben für die Datenbank wie Patchen, Updates, Backups und Konfiguration übernimmt.
- Skalierbarkeit: Es bietet die Möglichkeit, die Speicherkapazität und die Rechenressourcen Ihrer Datenbank zu skalieren, oft ohne Ausfallzeiten.
- Hohe Verfügbarkeit: Bietet Konfigurationen für hohe Verfügbarkeit, die sicherstellen, dass Ihre Datenbankdienste zuverlässig sind und Ausfälle von Zonen oder Instanzen standhalten können.
- Sicherheit: Bietet robuste Sicherheitsfunktionen wie Datenverschlüsselung, Identitäts- und Zugriffsmanagement (IAM)-Kontrollen und Netzwerkisolierung mit privaten IPs und VPC.
- Backups und Wiederherstellung: Unterstützt automatische Backups und die Wiederherstellung zu einem bestimmten Zeitpunkt, um Ihre Daten zu schützen und wiederherzustellen.
- Integration: Integriert sich nahtlos mit anderen Google Cloud-Diensten und bietet eine umfassende Lösung zum Erstellen, Bereitstellen und Verwalten von Anwendungen.
- Leistung: Bietet Leistungsmetriken und Diagnosen zur Überwachung, Fehlersuche und Verbesserung der Datenbankleistung.
Passwort
In der Webkonsole ermöglicht Cloud SQL dem Benutzer, das Passwort der Datenbank festzulegen, es gibt auch eine Generierungsfunktion, aber am wichtigsten ist, dass MySQL es erlaubt, ein leeres Passwort zu lassen, und alle erlauben, als Passwort nur das Zeichen "a" festzulegen:
.png)
Es ist auch möglich, eine Passwortpolitik zu konfigurieren, die Länge, Komplexität, Deaktivierung der Wiederverwendung und Deaktivierung des Benutzernamens im Passwort erfordert. Alle sind standardmäßig deaktiviert.
SQL Server kann mit Active Directory-Authentifizierung konfiguriert werden.
Zonenverfügbarkeit
Die Datenbank kann in 1 Zone oder in mehreren verfügbar sein, es wird jedoch empfohlen, wichtige Datenbanken in mehreren Zonen zu haben.
Verschlüsselung
Standardmäßig wird ein von Google verwalteter Verschlüsselungsschlüssel verwendet, es ist jedoch auch möglich, einen vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) auszuwählen.
Verbindungen
- Private IP: Geben Sie das VPC-Netzwerk an, und die Datenbank erhält eine private IP innerhalb des Netzwerks.
- Öffentliche IP: Die Datenbank erhält eine öffentliche IP, aber standardmäßig kann niemand eine Verbindung herstellen.
- Autorisierte Netzwerke: Geben Sie öffentliche IP-Bereiche an, die erlaubt sein sollten, um eine Verbindung zur Datenbank herzustellen.
- Privater Pfad: Wenn die DB mit einer VPC verbunden ist, ist es möglich, diese Option zu aktivieren und anderen GCP-Diensten wie BigQuery Zugriff darauf zu gewähren.
.png)
Datenschutz
- Tägliche Backups: Führen Sie automatische tägliche Backups durch und geben Sie die Anzahl der Backups an, die Sie aufbewahren möchten.
- Wiederherstellung zu einem bestimmten Zeitpunkt: Ermöglicht es Ihnen, Daten von einem bestimmten Zeitpunkt wiederherzustellen, bis zu einem Bruchteil einer Sekunde.
- Löschschutz: Wenn aktiviert, kann die DB nicht gelöscht werden, bis diese Funktion deaktiviert ist.
Enumeration
# Get SQL instances
gcloud sql instances list
gcloud sql instances describe <inst-name> # get IPs, CACert, settings
# Get database names inside an instance (like information_schema, sys...)
gcloud sql databases list --instance <intance-name>
gcloud sql databases describe <db-name> --instance <intance-name>
# Get usernames inside the db instance
gcloud sql users list --instance <intance-name>
# Backups
gcloud sql backups list --instance <intance-name>
gcloud sql backups describe <backup-name> --instance <intance-name>
Unauthenticated Enum
GCP - Cloud SQL Unauthenticated Enum
Post Exploitation
GCP - Cloud SQL Post Exploitation
Persistence
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Lernen & üben Sie Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.