0Pricing
Ethical Hacking Academy · Урок

Раскрытие S3 и хранилищ

Общедоступные сегменты

«Раскрытие S3 и хранилищ» — бесплатный урок Ethical Hacking Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ethical Hacking Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ethical Hacking Academy содержит 4 уроков всего.

Почему хранилища раскрывают данные

Объектное хранилище, такое как AWS S3, Azure Blob и GCP Cloud Storage, — один из самых распространённых источников утечек данных из облака. Хранилища легко создавать и легко неправильно настраивать.

  • Случайно настроены на общедоступное чтение или write
  • Имеют предсказуемые имена, которые можно угадать
  • Используют слишком широкие политики хранилища или ACL

Одно общедоступное хранилище может раскрыть миллионы записей.

Как устроено именование S3

Имена хранилищ S3 глобально уникальны и соответствуют предсказуемым URL. Именно эта предсказуемость делает возможным перечисление.

Любой, кто угадает действительное имя хранилища, может проверить уровень его доступа.

# Two equivalent S3 URL forms
https://my-bucket.s3.amazonaws.com/
https://s3.amazonaws.com/my-bucket/

# Region-specific endpoint
https://my-bucket.s3.eu-west-1.amazonaws.com/

Обнаружение общедоступных хранилищ

Самая быстрая проверка — отправить запрос без аутентификации. Код состояния HTTP показывает состояние доступа.

  • 200 со списком в формате XML — общедоступен просмотр списка
  • 403 AccessDenied — хранилище существует, но является закрытым
  • 404 NoSuchBucket — хранилище не существует
# Anonymous listing attempt
curl -s https://example-data.s3.amazonaws.com/

# Anonymous via the AWS CLI (no signing)
aws s3 ls s3://example-data --no-sign-request

Перебор имён хранилищ

Атакующие составляют возможные имена из названия компании и распространённых суффиксов, а затем проверяют каждое. Инструменты автоматизируют этот процесс в больших масштабах.

Типичные шаблоны: company-backups, company-dev, company-logs, company-assets.

# Permutate and probe bucket names from a keyword
cloud_enum -k example

# Dedicated S3 enumerator
s3scanner scan --bucket-file candidates.txt

Общедоступное чтение и общедоступная запись

Общедоступный доступ бывает двух видов, причём write намного опаснее чтения.

  • Общедоступное чтение — атакующие скачивают Ваши данные (утечка данных)
  • Общедоступная запись — атакующие загружают объекты или перезаписывают их

Общедоступная запись позволяет искажать содержимое сайта, размещать вредоносные программы в Вашем домене и даже проводить атаки на цепочку поставок, если хранилище обслуживает ресурсы сайта или программного обеспечения.

# Test for public write (DANGEROUS - only with authorization)
aws s3 cp test.txt s3://example-data/ --no-sign-request

# If this succeeds, the bucket allows anonymous uploads.

Вводящая в заблуждение настройка «Block Public Access»

AWS предлагает настройки Block Public Access на уровне учётной записи и хранилища. Они эффективны, но часто неправильно понимаются.

  • Настройки уровня учётной записи имеют приоритет над политиками хранилища
  • Хранилище может быть закрытым даже при разрешительной политике, если включён BPA
  • И наоборот, отключение BPA может внезапно открыть множество хранилищ

Всегда проверяйте фактический доступ, а не только одну политику.

# Inspect block-public-access configuration
aws s3api get-public-access-block --bucket example-data
aws s3api get-bucket-policy-status --bucket example-data

Раскрытие данных в Azure Blob

Azure хранит объекты в container внутри учётных записей хранилища. Неправильная конфигурация устанавливает для container уровень общедоступного доступа blob или container.

Имена учётных записей хранилища также глобально уникальны и предсказуемы.

# Azure blob URL pattern
https://exampleacct.blob.core.windows.net/container/file.txt

# Anonymous list attempt against a public container
curl -s 'https://exampleacct.blob.core.windows.net/backups?restype=container&comp=list'

Раскрытие данных в GCP Cloud Storage

Хранилища Google Cloud Storage можно сделать общедоступными, предоставив субъекту allUsers или allAuthenticatedUsers роль чтения.

Схема раскрытия аналогична S3: предсказуемые имена, анонимная проверка и общедоступные привязки IAM.

# Anonymous list of a GCS bucket
curl -s https://storage.googleapis.com/example-bucket/

# Check IAM bindings for allUsers (authenticated)
gsutil iam get gs://example-bucket

Что атакующие ищут внутри

Общедоступное хранилище — лишь дверь. Настоящая цель находится внутри:

  • Дампы баз данных и резервные копии
  • Исходный код и .env files с секретами
  • Учётные данные облака и ключи API
  • PII клиентов (персональные данные)
  • Внутренние документы и конфигурации

Даже небольшой утёкший file может содержать ключи, позволяющие получить полный доступ к учётной записи.

Исправление и усиление защиты

Защита от раскрытия данных в хранилищах должна быть многоуровневой:

  • Включите Block Public Access на уровне учётной записи
  • Удалите общедоступные ACL и назначения allUsers / allAuthenticatedUsers
  • Используйте политики хранилища, ограниченные конкретными субъектами
  • Включите шифрование и журналирование доступа
  • Запустите непрерывное сканирование конфигурации, чтобы обнаруживать новые общедоступные хранилища

Ответственно обращайтесь с раскрытыми данными

Обнаружение общедоступного хранилища с реальными данными связано с этическими и юридическими рисками.

  • Не скачивайте больше минимального объёма, необходимого для подтверждения раскрытия
  • Никогда не извлекайте и не сохраняйте PII клиентов
  • Немедленно и безопасно сообщите об обнаружении
  • Соблюдайте область проверки и правила проведения задания

Цель — доказать наличие доступа, а не собирать данные.

Быстрая проверка

Анонимный запрос к URL хранилища S3 возвращает HTTP 403 AccessDenied. На что это указывает?

Итоги: раскрытие данных в S3 и хранилищах

Вы узнали, как объектные хранилища становятся источником утечек и как безопасно проверять это.

  • Имена хранилищ глобально уникальны и предсказуемы, что позволяет выполнять перечисление
  • Коды состояния HTTP раскрывают состояние доступа: 200 (общедоступно), 403 (закрыто), 404 (отсутствует)
  • Общедоступная запись опаснее общедоступного чтения
  • Та же схема применима к Azure Blob и GCP Cloud Storage
  • Для исправления используйте Block Public Access и политики минимальных привилегий

Далее: службы метаданных и SSRF — специфичная для облака цепочка атак.

Часто задаваемые вопросы

Урок «Раскрытие S3 и хранилищ» бесплатный?

Да — полный текст урока «Раскрытие S3 и хранилищ» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ethical Hacking Academy, подпишись на CoddyKit PRO. Курс Ethical Hacking Academy содержит 4 уроков всего.

Чему я научусь в уроке «Раскрытие S3 и хранилищ»?

Общедоступные сегменты Ты практикуешь Ethical Hacking Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Ethical Hacking Academy?

Предыдущий опыт не требуется. Ethical Hacking Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Раскрытие S3 и хранилищ»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Ethical Hacking Academy?

Да. Каждый урок Ethical Hacking Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Область атак в облаке
  2. Ошибки конфигурации IAM
  3. Раскрытие S3 и хранилищ
  4. Метаданные и SSRF
← Назад к Ethical Hacking Academy