DO - Spaces

Apoya a HackTricks

Información Básica

DigitalOcean Spaces son servicios de almacenamiento de objetos. Permiten a los usuarios almacenar y servir grandes cantidades de datos, como imágenes y otros archivos, de manera escalable y rentable. Los Spaces pueden ser accedidos a través del panel de control de DigitalOcean, o utilizando la API de DigitalOcean, y están integrados con otros servicios de DigitalOcean como Droplets (servidores privados virtuales) y Load Balancers.

Acceso

Los Spaces pueden ser públicos (cualquiera puede acceder a ellos desde Internet) o privados (solo usuarios autorizados). Para acceder a los archivos de un espacio privado fuera del Panel de Control, necesitamos generar una clave de acceso y un secreto. Estos son un par de tokens aleatorios que sirven como nombre de usuario y contraseña para otorgar acceso a tu Space.

Una URL de un space se ve así: https://uniqbucketname.fra1.digitaloceanspaces.com/ Nota la región como subdominio.

Incluso si el space es público, los archivos dentro de él pueden ser privados (podrás acceder a ellos solo con credenciales).

Sin embargo, incluso si el archivo es privado, desde la consola es posible compartir un archivo con un enlace como https://fra1.digitaloceanspaces.com/uniqbucketname/filename?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=DO00PL3RA373GBV4TRF7%2F20221213%2Ffra1%2Fs3%2Faws4_request&X-Amz-Date=20221213T121017Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=6a183dbc42453a8d30d7cd2068b66aeb9ebc066123629d44a8108115def975bc por un período de tiempo:

Enumeración

# Unauthenticated
## Note how the region is specified in the endpoint
aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com --no-sign-request s3://uniqbucketname

# Authenticated
## Configure spaces keys as AWS credentials
aws configure
AWS Access Key ID [None]: <spaces_key>
AWS Secret Access Key [None]: <Secret>
Default region name [None]:
Default output format [None]:

## List all buckets in a region
aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com

## List files inside a bucket
aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com s3://uniqbucketname

## It's also possible to generate authorized access to buckets from the API
Apoya a HackTricks

Last updated