mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-31 23:15:48 -08:00
45 lines
2.4 KiB
Markdown
45 lines
2.4 KiB
Markdown
# DO - Spaces
|
|
|
|
{{#include ../../../banners/hacktricks-training.md}}
|
|
|
|
## Informazioni di base
|
|
|
|
DigitalOcean Spaces sono **servizi di archiviazione oggetti**. Consentono agli utenti di **archiviare e servire grandi quantità di dati**, come immagini e altri file, in modo scalabile ed economico. Gli Spaces possono essere accessibili tramite il pannello di controllo di DigitalOcean o utilizzando l'API di DigitalOcean, e sono integrati con altri servizi di DigitalOcean come Droplets (server privati virtuali) e Load Balancers.
|
|
|
|
### Accesso
|
|
|
|
Gli Spaces possono essere **pubblici** (chiunque può accedervi da Internet) o **privati** (solo utenti autorizzati). Per accedere ai file da uno spazio privato al di fuori del Pannello di Controllo, dobbiamo generare una **chiave di accesso** e un **segreto**. Questi sono una coppia di token casuali che fungono da **nome utente** e **password** per concedere accesso al tuo Space.
|
|
|
|
Un **URL di uno spazio** appare così: **`https://uniqbucketname.fra1.digitaloceanspaces.com/`**\
|
|
Nota la **regione** come **sottodominio**.
|
|
|
|
Anche se lo **spazio** è **pubblico**, i **file** **al suo interno** possono essere **privati** (potrai accedervi solo con credenziali).
|
|
|
|
Tuttavia, **anche** se il file è **privato**, dalla console è possibile condividere un file con un link come `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` per un periodo di tempo:
|
|
|
|
<figure><img src="../../../images/image (277).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
### Enumerazione
|
|
```bash
|
|
# 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
|
|
```
|
|
{{#include ../../../banners/hacktricks-training.md}}
|