DO - Spaces

Soutenez HackTricks

Informations de base

Les DigitalOcean Spaces sont des services de stockage d'objets. Ils permettent aux utilisateurs de stocker et de servir de grandes quantités de données, telles que des images et d'autres fichiers, de manière évolutive et économique. Les Spaces peuvent être accessibles via le panneau de contrôle DigitalOcean, ou en utilisant l'API DigitalOcean, et sont intégrés avec d'autres services DigitalOcean tels que les Droplets (serveurs privés virtuels) et les Load Balancers.

Accès

Les Spaces peuvent être publics (tout le monde peut y accéder depuis Internet) ou privés (seuls les utilisateurs autorisés). Pour accéder aux fichiers d'un espace privé en dehors du panneau de contrôle, nous devons générer une clé d'accès et un secret. Ce sont une paire de jetons aléatoires qui servent de nom d'utilisateur et de mot de passe pour accorder l'accès à votre Space.

Une URL d'un espace ressemble à ceci : https://uniqbucketname.fra1.digitaloceanspaces.com/ Notez la région comme sous-domaine.

Même si l'espace est public, les fichiers à l'intérieur peuvent être privés (vous pourrez y accéder uniquement avec des identifiants).

Cependant, même si le fichier est privé, depuis la console, il est possible de partager un fichier avec un lien tel que 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 pour une période de temps :

Énumération

# 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
Soutenez HackTricks

Last updated