GCP - Filestore Enum

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Podstawowe informacje

Google Cloud Filestore to zarządzana usługa przechowywania plików dostosowana do aplikacji potrzebujących zarówno interfejsu systemu plików, jak i współdzielonego systemu plików dla danych. Ta usługa wyróżnia się oferowaniem udziałów plików o wysokiej wydajności, które można zintegrować z różnymi usługami GCP. Jej użyteczność przejawia się w scenariuszach, gdzie tradycyjne interfejsy i semantyka systemu plików są kluczowe, takich jak przetwarzanie mediów, zarządzanie treścią i tworzenie kopii zapasowych baz danych.

Możesz to porównać do dowolnego repozytorium dokumentów współdzielonych NFS - potencjalnego źródła poufnych informacji.

Połączenia

Podczas tworzenia instancji Filestore można wybrać sieć, w której będzie dostępna.

Co więcej, domyślnie wszyscy klienci w wybranej sieci VPC i regionie będą mieli do niej dostęp, jednakże możliwe jest ograniczenie dostępu również przez adres IP lub zakres oraz określenie uprawnień dostępu (Administrator, Administrator Widz, Edytor, Widz) dla klienta w zależności od adresu IP.

Można również uzyskać do niej dostęp za pośrednictwem Połączenia z Dostępem do Usługi Prywatnej:

  • Dotyczą konkretnej sieci VPC i mogą być używane we wszystkich usługach zarządzanych, takich jak Memorystore, Tensorflow i SQL.

  • między twoją siecią VPC a siecią należącą do Google za pomocą połączenia VPC peering, umożliwiając twoim instancjom i usługom komunikację wyłącznie za pomocą adresów IP wewnętrznych.

  • Tworzą izolowany projekt dla ciebie po stronie producenta usługi, co oznacza, że nie dzielą go inni klienci. Będziesz płacił tylko za zasoby, które przydzielasz.

  • Połączenie VPC peering importuje nowe trasy do twojej sieci VPC

Kopie zapasowe

Możliwe jest tworzenie kopii zapasowych udziałów plików. Mogą one być później przywracane w oryginalnej nowej instancji Fileshare lub w nowych.

Szyfrowanie

Domyślnie używany jest klucz szyfrowania zarządzany przez Google do szyfrowania danych, ale możliwe jest wybranie klucza szyfrowania zarządzanego przez klienta (CMEK).

Wyliczanie

Jeśli znajdziesz dostępny filestore w projekcie, możesz go zamontować z wewnątrz skompromitowanej instancji obliczeniowej. Użyj poniższej komendy, aby sprawdzić, czy istnieje jakikolwiek.

# 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

Należy pamiętać, że usługa filestore może znajdować się w całkowicie nowej podsieci utworzonej dla niej (w ramach Połączenia Dostępu do Usługi Prywatnej, które jest peerem VPC). Dlatego może być konieczne wyliczenie peerów VPC w celu uruchomienia nmap na tych zakresach sieciowych.

# 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

Eskalacja uprawnień i eksploatacja po włamaniu

Nie ma bezpośrednich sposobów na eskalację uprawnień w GCP poprzez nadużycie tego usługi, ale za pomocą niektórych sztuczek eksploatacji po włamaniu można uzyskać dostęp do danych i być może znajdziesz pewne poświadczenia, aby eskalować uprawnienia:

pageGCP - Filestore Post Exploitation

Trwałość

pageGCP - Filestore Persistence
Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Last updated