GCP - Filestore Enum

Impara l'hacking su AWS da zero a esperto con htARTE (Esperto Red Team di HackTricks su AWS)!

Altri modi per supportare HackTricks:

Informazioni di Base

Google Cloud Filestore è un servizio di archiviazione file gestito progettato per applicazioni che necessitano sia di un'interfaccia del filesystem che di un filesystem condiviso per i dati. Questo servizio eccelle offrendo condivisioni di file ad alte prestazioni, che possono essere integrate con vari servizi GCP. La sua utilità si evidenzia in scenari in cui le interfacce e le semantiche del filesystem tradizionale sono cruciali, come nell'elaborazione multimediale, nella gestione dei contenuti e nel backup dei database.

Puoi pensare a questo come a qualsiasi altro repository di documenti condiviso NFS - una potenziale fonte di informazioni sensibili.

Connessioni

Quando si crea un'istanza di Filestore è possibile selezionare la rete in cui sarà accessibile.

Inoltre, per impostazione predefinita tutti i client sulla rete VPC e nella regione selezionata saranno in grado di accedervi, tuttavia, è possibile limitare l'accesso anche per indirizzo IP o intervallo e indicare il privilegio di accesso (Amministratore, Visualizzatore Amministratore, Editore, Visualizzatore) che l'utente del client otterrà in base all'indirizzo IP.

Può anche essere accessibile tramite una Connessione di Accesso a Servizio Privato:

  • Sono per rete VPC e possono essere utilizzate con tutti i servizi gestiti come Memorystore, Tensorflow e SQL.

  • Sono tra la tua rete VPC e la rete di proprietà di Google utilizzando un VPC peering, consentendo alle tue istanze e servizi di comunicare esclusivamente utilizzando indirizzi IP interni.

  • Crea un progetto isolato per te sul lato del produttore del servizio, il che significa che nessun altro cliente lo condivide. Pagherai solo per le risorse che fornisci.

  • Il VPC peering importerà nuove route nella tua VPC

Backup

È possibile creare backup delle condivisioni di file. Questi possono essere successivamente ripristinati nell'originale nuova istanza di Fileshare o in nuove istanze.

Crittografia

Per impostazione predefinita verrà utilizzata una chiave di crittografia gestita da Google per crittografare i dati, ma è possibile selezionare una chiave di crittografia gestita dal cliente (CMEK).

Enumerazione

Se trovi un filestore disponibile nel progetto, puoi montarlo all'interno della tua istanza di calcolo compromessa. Utilizza il seguente comando per vedere se ne esistono.

# 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

Si noti che un servizio di filestore potrebbe trovarsi in una nuova sotto rete creata appositamente per esso (all'interno di una Connessione di Accesso a Servizi Privati, che è un peer VPC). Quindi potrebbe essere necessario enumerare i peer VPC per eseguire anche nmap su quei range di rete.

# 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

Escalazione dei privilegi e post-exploitation

Non ci sono modi per escalare i privilegi direttamente in GCP abusando di questo servizio, ma utilizzando alcuni trucchi di post-exploitation è possibile accedere ai dati e forse trovare delle credenziali per escalare i privilegi:

pageGCP - Filestore Post Exploitation

Persistenza

pageGCP - Filestore Persistence
Impara l'hacking su AWS da zero a esperto con htARTE (HackTricks AWS Red Team Expert)!

Altri modi per supportare HackTricks:

Last updated