
Cloud Security Testing Guide (CSTG) — это комплексное, не зависящее от вендора руководство по тестированию безопасности облачных сред. Оно предназначено для пентестеров, облачных и платформенных инженеров, архитекторов безопасности, инженеров по обнаружению угроз и аудиторов — для всех, кому необходимо оценивать или защищать инфраструктуру, работающую у крупного облачного провайдера.
Облачные провайдеры выпускают и меняют сервисы быстрее, чем любая отдельная команда может за ними уследить, и каждый новый управляемый сервис приносит собственную модель идентификации, сетевую доступность и векторы злоупотреблений. Традиционные методологии тестирования сетей и приложений не охватывают эти специфичные для провайдера риски: политика бакета S3, роль IAM с избыточными разрешениями, управляемое удостоверение, привязанное к виртуальной машине, или доступный на запись бакет для деплоя — это не находки, которые выявит сканирование портов или веб-прокси. CSTG создано, чтобы заполнить этот пробел структурированной, воспроизводимой методологией тестирования, учитывающей особенности конкретного провайдера.
Каждый провайдер разделён на фазы тестирования, и в рамках каждой фазы атомарной единицей является страница отдельного сервиса:
Наиболее чёткая граница в руководстве проходит между неаутентифицированным и аутентифицированным тестированием, что отражает самый важный вопрос в любом облачном тестировании: каким доступом мы обладаем изначально?
Каждая страница имеет фиксированную структуру — Summary (краткое описание), Prerequisites (предварительные требования), Enumeration (перечисление), Misconfigurations & Findings (неверные конфигурации и находки), Exploitation (эксплуатация), Detection & Logging (обнаружение и логирование), Remediation & Hardening (устранение и укрепление), Tools (инструменты), References (ссылки) — и содержит машиночитаемый frontmatter (провайдер, сервис, фаза, требуемый доступ, требуемые разрешения). Формат создания страниц и определения уровней доступа см. в STRUCTURE.md.
Идентификация (IAM/STS), хранилища (S3, EBS), вычисления (EC2, Lambda, ECS/EKS, ECR), данные (RDS, DynamoDB), приложения и интеграция (API Gateway, SNS/SQS, Cognito), инфраструктура как код (CloudFormation), секреты и ключи (Secrets Manager, SSM, KMS), а также логирование и мониторинг (CloudTrail).
Идентификация (Entra ID, RBAC, Managed Identities), хранилища (Storage Accounts), вычисления (Virtual Machines, AKS), приложения (App Service, Functions, Logic Apps), автоматизация (Automation Accounts, ARM templates), секреты и ключи (Key Vault), а также сеть.
Идентификация (IAM, Service Accounts), хранилища (Cloud Storage), вычисления (Compute Engine, GKE, Cloud Run, Cloud Functions), данные (Cloud SQL), сборка и интеграция (Cloud Build, Pub/Sub), секреты и ключи (Secret Manager, KMS), а также пивотинг через Workspace.
Платформенные сервисы, модель безопасности которых основана на API-ключах, токенах и средствах контроля уровня приложений, а не на инфраструктурном IAM. Их фазы соответствующим образом адаптированы.
service_role, автоматически генерируемый API PostgREST и Row Level Security (RLS) в PostgreSQL, а также Auth, Storage и Edge Functions.Авторизация и правила взаимодействия. Тестирование облачных сред регулируется политиками допустимого использования и тестирования на проникновение каждого провайдера. Отказ в обслуживании (DoS) и деструктивные действия по умолчанию запрещены в AWS, Azure и GCP без предварительного одобрения. Всегда тестируйте только те среды, которые вам явно разрешено оценивать, в рамках согласованного объёма.
CSTG развивается силами сообщества. Приветствуются новые страницы сервисов, дополнительные техники, исправления и расширение покрытия провайдеров — формат страниц и шаблоны issue см. в STRUCTURE.md и в каталоге .github/ISSUE_TEMPLATE/. Все материалы публикуются под лицензией CC BY-SA 4.0.
Эта работа лицензирована по лицензии Creative Commons Attribution-ShareAlike 4.0 International.
| Фаза | На какой вопрос она отвечает |
|---|
| Базовая информация | Как устроена модель идентификации, доступа и ресурсов данного провайдера? |
| Неаутентифицированный доступ / Внешняя поверхность | Что доступно атакующему без учётных данных? |
| Сервисы (перечисление) | Что развёрнуто при действительных учётных данных и как оно сконфигурировано? |
| Повышение привилегий | Как субъект с низкими привилегиями может получить больше доступа? |
| Горизонтальное перемещение | Как доступ перемещается между сервисами, аккаунтами или в локальную инфраструктуру? |
| Пост-эксплуатация | Что может сделать атакующий с полученным доступом? |
| Закрепление | Как устанавливается и скрывается долговременный доступ? |