
Мультиоблачный инструмент развертывания с уязвимостями по замыслу, использующий Terraform для предоставления намеренно небезопасной облачной инфраструктуры для обучения и практики в области безопасности.
English | 中文
TerraformGoat — это инструмент для развёртывания уязвимых сред в нескольких облаках, разработанный исследовательской лабораторией HXSecurity.
В настоящее время поддерживаются следующие облачные провайдеры: Alibaba Cloud, Tencent Cloud, Huawei Cloud, Amazon Web Services, Google Cloud Platform, Microsoft Azure.
TerraformGoat развёртывается с помощью Docker-образов, поэтому требуется среда Docker Engine. Установку Docker Engine можно найти по адресу https://docs.docker.com/engine/install/
Выберите соответствующую команду установки в зависимости от используемого облачного провайдера.
Alibaba Cloud
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aliyun:0.0.7
docker run -itd --name terraformgoat_aliyun_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aliyun:0.0.7
docker exec -it terraformgoat_aliyun_0.0.7 /bin/bash
Tencent Cloud
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_tencentcloud:0.0.7
docker run -itd --name terraformgoat_tencentcloud_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_tencentcloud:0.0.7
docker exec -it terraformgoat_tencentcloud_0.0.7 /bin/bash
Huawei Cloud
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_huaweicloud:0.0.7
docker run -itd --name terraformgoat_huaweicloud_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_huaweicloud:0.0.7
docker exec -it terraformgoat_huaweicloud_0.0.7 /bin/bash
Amazon Web Services
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aws:0.0.7
docker run -itd --name terraformgoat_aws_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aws:0.0.7
docker exec -it terraformgoat_aws_0.0.7 /bin/bash
Google Cloud Platform
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_gcp:0.0.7
docker run -itd --name terraformgoat_gcp_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_gcp:0.0.7
docker exec -it terraformgoat_gcp_0.0.7 /bin/bash
Microsoft Azure
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_azure:0.0.7
docker run -itd --name terraformgoat_azure_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_azure:0.0.7
docker exec -it terraformgoat_azure_0.0.7 /bin/bash
После входа в контейнер перейдите в соответствующий каталог сценария и можно начинать развёртывание.
Ниже приведена демонстрация сборки сценария Alibaba Cloud Bucket Object Traversal.
docker pull registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aliyun:0.0.7
docker run -itd --name terraformgoat_aliyun_0.0.7 registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat_aliyun:0.0.7
docker exec -it terraformgoat_aliyun_0.0.7 /bin/bash

cd /TerraformGoat/aliyun/oss/bucket_object_traversal/
aliyun configure
terraform init
terraform apply

Программа запрашивает Enter a value:, введите yes и нажмите Enter, затем используйте curl для обращения к bucket — вы увидите перечисление объектов.

Чтобы избежать дальнейшего списания средств за облачные сервисы, не забудьте уничтожить сценарий после использования.
terraform destroy
Если вы находитесь в контейнере, сначала выполните команду exit для выхода из контейнера, а затем выполните следующую команду на хосте.
docker stop $(docker ps -a -q -f "name=terraformgoat*")
docker rm $(docker ps -a -q -f "name=terraformgoat*")
docker rmi $(docker images -a -q -f "reference=registry.cn-hongkong.aliyuncs.com/huoxian_pub/terraformgoat*")
Вклад приветствуется и высоко ценится. Дополнительную информацию о рабочем процессе см. в CONTRIBUTING.md.
TerraformGoat распространяется под лицензией Apache 2.0. Подробности см. в файле LICENSE.
| ID | Облачный провайдер | Типы облачных сервисов | Уязвимая среда |
|---|
| 1 | Alibaba Cloud | Сетевые сервисы | VPC Security Group Open All Ports |
| 2 | Alibaba Cloud | Сетевые сервисы | VPC Security Group Open Common Ports |
| 3 | Alibaba Cloud | Объектное хранилище | Bucket HTTP Enable |
| 4 | Alibaba Cloud | Объектное хранилище | Object ACL Writable |
| 5 | Alibaba Cloud | Объектное хранилище | Object ACL Readable |
| 6 | Alibaba Cloud | Объектное хранилище | Special Bucket Policy |
| 7 | Alibaba Cloud | Объектное хранилище | Bucket Public Access |
| 8 | Alibaba Cloud | Объектное хранилище | Object Public Access |
| 9 | Alibaba Cloud | Объектное хранилище | Bucket Logging Disable |
| 10 | Alibaba Cloud | Объектное хранилище | Bucket Policy Readable |
| 11 | Alibaba Cloud | Объектное хранилище | Bucket Object Traversal |
| 12 | Alibaba Cloud | Объектное хранилище | Unrestricted File Upload |
| 13 | Alibaba Cloud | Объектное хранилище | Server Side Encryption No KMS Set |
| 14 | Alibaba Cloud | Объектное хранилище | Server Side Encryption Not Using BYOK |
| 15 | Alibaba Cloud | Elastic Compute Service | ECS SSRF |
| 16 | Alibaba Cloud | Elastic Compute Service | ECS Unattached Disks Are Unencrypted |
| 17 | Alibaba Cloud | Elastic Compute Service | ECS Virtual Machine Disks Are Unencrypted |
| 18 | Tencent Cloud | Сетевые сервисы | VPC Security Group Open All Ports |
| 19 | Tencent Cloud | Сетевые сервисы | VPC Security Group Open Common Ports |
| 20 | Tencent Cloud | Объектное хранилище | Bucket ACL Writable |
| 21 | Tencent Cloud | Объектное хранилище | Bucket ACL Readable |
| 22 | Tencent Cloud | Объектное хранилище | Bucket Public Access |
| 23 | Tencent Cloud | Объектное хранилище | Object Public Access |
| 24 | Tencent Cloud | Объектное хранилище | Unrestricted File Upload |
| 25 | Tencent Cloud | Объектное хранилище | Bucket Object Traversal |
| 26 | Tencent Cloud | Объектное хранилище | Bucket Logging Disable |
| 27 | Tencent Cloud | Объектное хранилище | Server Side Encryption Disable |
| 28 | Tencent Cloud | Elastic Compute Service | CVM SSRF |
| 29 | Tencent Cloud | Elastic Compute Service | CBS Storage Are Not Used |
| 30 | Tencent Cloud | Elastic Compute Service | CVM Virtual Machine Disks Are Unencrypted |
| 31 | Huawei Cloud | Сетевые сервисы | ECS Unsafe Security Group |
| 32 | Huawei Cloud | Объектное хранилище | Object ACL Writable |
| 33 | Huawei Cloud | Объектное хранилище | Special Bucket Policy |
| 34 | Huawei Cloud | Объектное хранилище | Unrestricted File Upload |
| 35 | Huawei Cloud | Объектное хранилище | Bucket Object Traversal |
| 36 | Huawei Cloud | Объектное хранилище | Wrong Policy Causes Arbitrary File Uploads |
| 37 | Huawei Cloud | Elastic Compute Service | ECS SSRF |
| 38 | Huawei Cloud | Relational Database Service | RDS Mysql Baseline Checking Environment |
| 39 | Amazon Web Services | Сетевые сервисы | VPC Security Group Open All Ports |
| 40 | Amazon Web Services | Сетевые сервисы | VPC Security Group Open Common Ports |
| 41 | Amazon Web Services | Объектное хранилище | Object ACL Writable |
| 42 | Amazon Web Services | Объектное хранилище | Bucket ACL Writable |
| 43 | Amazon Web Services | Объектное хранилище | Bucket ACL Readable |
| 44 | Amazon Web Services | Объектное хранилище | MFA Delete Is Disable |
| 45 | Amazon Web Services | Объектное хранилище | Special Bucket Policy |
| 46 | Amazon Web Services | Объектное хранилище | Bucket Object Traversal |
| 47 | Amazon Web Services | Объектное хранилище | Unrestricted File Upload |
| 48 | Amazon Web Services | Объектное хранилище | Bucket Logging Disable |
| 49 | Amazon Web Services | Объектное хранилище | Bucket Allow HTTP Access |
| 50 | Amazon Web Services | Объектное хранилище | Bucket Default Encryption Disable |
| 51 | Amazon Web Services | Elastic Compute Service | EC2 SSRF |
| 52 | Amazon Web Services | Elastic Compute Service | Console Takeover |
| 53 | Amazon Web Services | Elastic Compute Service | EBS Volumes Are Not Used |
| 54 | Amazon Web Services | Elastic Compute Service | EBS Volumes Encryption Is Disabled |
| 55 | Amazon Web Services | Elastic Compute Service | Snapshots Of EBS Volumes Are Unencrypted |
| 56 | Amazon Web Services | Identity and Access Management | IAM Privilege Escalation |
| 57 | Google Cloud Platform | Объектное хранилище | Object ACL Writable |
| 58 | Google Cloud Platform | Объектное хранилище | Bucket ACL Writable |
| 59 | Google Cloud Platform | Объектное хранилище | Bucket Object Traversal |
| 60 | Google Cloud Platform | Объектное хранилище | Unrestricted File Upload |
| 61 | Google Cloud Platform | Elastic Compute Service | VM Command Execution |
| 62 | Microsoft Azure | Объектное хранилище | Blob Public Access |
| 63 | Microsoft Azure | Объектное хранилище | Container Blob Traversal |
| 64 | Microsoft Azure | Elastic Compute Service | VM Command Execution |