GCP - Filestore Enum

Reading time: 4 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

Grundinformationen

Google Cloud Filestore ist ein verwalteter Dateispeicherdienst, der für Anwendungen entwickelt wurde, die sowohl eine Dateisystemschnittstelle als auch ein gemeinsames Dateisystem für Daten benötigen. Dieser Dienst zeichnet sich durch die Bereitstellung von leistungsstarken Dateifreigaben aus, die mit verschiedenen GCP-Diensten integriert werden können. Seine Nützlichkeit zeigt sich in Szenarien, in denen traditionelle Dateisystemschnittstellen und -semantiken entscheidend sind, wie z.B. in der Medienverarbeitung, dem Content-Management und der Sicherung von Datenbanken.

Man kann dies wie ein anderes NFS gemeinsames Dokumentenrepository betrachten - eine potenzielle Quelle sensibler Informationen.

Verbindungen

Beim Erstellen einer Filestore-Instanz ist es möglich, das Netzwerk auszuwählen, in dem es zugänglich sein wird.

Darüber hinaus können standardmäßig alle Clients im ausgewählten VPC-Netzwerk und -Region darauf zugreifen, jedoch ist es möglich, den Zugriff auch nach IP-Adresse oder -Bereich einzuschränken und die Zugriffsberechtigung (Admin, Admin Viewer, Editor, Viewer) anzugeben, die der Client je nach IP-Adresse erhält.

Es kann auch über eine Private Service Access Connection zugänglich sein:

  • Sind pro VPC-Netzwerk und können über alle verwalteten Dienste wie Memorystore, Tensorflow und SQL hinweg verwendet werden.
  • Sind zwischen Ihrem VPC-Netzwerk und einem von Google betriebenen Netzwerk unter Verwendung eines VPC-Peerings, wodurch Ihre Instanzen und Dienste ausschließlich über interne IP-Adressen kommunizieren können.
  • Erstellen ein isoliertes Projekt für Sie auf der Dienstanbieter-Seite, was bedeutet, dass keine anderen Kunden es teilen. Sie werden nur für die Ressourcen, die Sie bereitstellen, in Rechnung gestellt.
  • Das VPC-Peering importiert neue Routen in Ihr VPC.

Backups

Es ist möglich, Backups der Dateifreigaben zu erstellen. Diese können später im Ursprungs-neuen Fileshare-Instanz oder in neuen wiederhergestellt werden.

Verschlüsselung

Standardmäßig wird ein von Google verwalteter Verschlüsselungsschlüssel verwendet, um die Daten zu verschlüsseln, aber es ist möglich, einen vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) auszuwählen.

Enumeration

Wenn Sie einen Filestore im Projekt finden, können Sie ihn von Ihrer kompromittierten Compute-Instanz aus einbinden. Verwenden Sie den folgenden Befehl, um zu sehen, ob welche existieren.

bash
# Instances
gcloud filestore instances list # Check the IP address
gcloud filestore instances describe --zone <zone> <name> # Check IP and access restrictions

# Backups
gcloud filestore backups list
gcloud filestore backups describe --region <region> <backup>

# Search for NFS shares in a VPC subnet
sudo nmap -n -T5 -Pn -p 2049 --min-parallelism 100 --min-rate 1000 --open 10.99.160.2/20

caution

Beachten Sie, dass ein Filestore-Dienst sich in einem völlig neuen Subnetzwerk befinden kann, das dafür erstellt wurde (innerhalb einer Private Service Access Connection, die ein VPC-Peer ist).
Daher müssen Sie möglicherweise VPC-Peers auflisten, um auch nmap über diese Netzwerkbereiche auszuführen.

# Get peerings
gcloud compute networks peerings list
# Get routes imported from a peering
gcloud compute networks peerings list-routes <peering-name> --network=<network-name> --region=<region> --direction=INCOMING

Privilegieneskalation & Post-Exploitation

Es gibt keine Möglichkeiten, Privilegien in GCP direkt durch den Missbrauch dieses Dienstes zu eskalieren, aber mit einigen Post-Exploitation-Tricks ist es möglich, auf die Daten zuzugreifen und vielleicht finden Sie einige Anmeldeinformationen, um Privilegien zu eskalieren:

GCP - Filestore Post Exploitation

Persistenz

GCP - Filestore 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