DO - Spaces

Support HackTricks

Basic Information

DigitalOcean Spaces є сервісами об'єктного зберігання. Вони дозволяють користувачам зберігати та надавати великі обсяги даних, такі як зображення та інші файли, у масштабованому та економічному форматі. До Spaces можна отримати доступ через панель управління DigitalOcean або за допомогою API DigitalOcean, і вони інтегровані з іншими сервісами DigitalOcean, такими як Droplets (віртуальні приватні сервери) та Load Balancers.

Access

Spaces можуть бути публічними (будь-хто може отримати до них доступ з Інтернету) або приватними (тільки авторизовані користувачі). Щоб отримати доступ до файлів з приватного простору поза панеллю управління, нам потрібно згенерувати ключ доступу та секрет. Це пара випадкових токенів, які слугують як ім'я користувача та пароль для надання доступу до вашого простору.

URL простору виглядає так: https://uniqbucketname.fra1.digitaloceanspaces.com/ Зверніть увагу на регіон як піддомен.

Навіть якщо простір є публічним, файли всередині нього можуть бути приватними (ви зможете отримати до них доступ лише з обліковими даними).

Однак, навіть якщо файл є приватним, з консолі можливо поділитися файлом за посиланням, таким як 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 на певний період часу:

Enumeration

# 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
Підтримайте HackTricks

Last updated