
Outil de déploiement multi-cloud vulnérable par conception utilisant Terraform pour provisionner une infrastructure cloud intentionnellement non sécurisée pour la formation et la pratique en sécurité.
English | 中文
TerraformGoat est l'outil de déploiement multi-cloud « Vulnérable par conception » du laboratoire de recherche HXSecurity.
Les fournisseurs de cloud actuellement pris en charge incluent Alibaba Cloud, Tencent Cloud, Huawei Cloud, Amazon Web Services, Google Cloud Platform et Microsoft Azure.
TerraformGoat est déployé à l'aide d'images Docker et nécessite donc un environnement Docker Engine. L'installation de Docker Engine est disponible sur https://docs.docker.com/engine/install/
Selon le fournisseur de services cloud que vous utilisez, choisissez la commande d'installation correspondante.
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
Une fois dans le conteneur, allez dans le répertoire du scénario correspondant avec cd et commencez à déployer le scénario.
Voici une démonstration de la construction du scénario Parcours des objets du bucket 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

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

Le programme invite Enter a value:, tapez yes et appuyez sur Entrée, puis utilisez curl pour accéder au bucket. Vous pouvez voir les objets parcourus.

Pour éviter que le service cloud continue à générer des frais, n'oubliez pas de détruire le scénario après utilisation.
terraform destroy
Si vous êtes dans un conteneur, exécutez d'abord la commande exit pour quitter le conteneur, puis exécutez la commande suivante sur l'hôte.
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*")
Les contributions sont les bienvenues et grandement appréciées. Pour plus d'informations sur le flux de travail des contributions, veuillez consulter CONTRIBUTING.md.
TerraformGoat est sous licence Apache 2.0. Voir le fichier LICENSE pour plus de détails.
| ID | Fournisseur de services cloud | Types de services cloud | Environnement vulnérable |
|---|
| 1 | Alibaba Cloud | Réseau | Groupe de sécurité VPC ouvert à tous les ports |
| 2 | Alibaba Cloud | Réseau | Groupe de sécurité VPC ouvert aux ports communs |
| 3 | Alibaba Cloud | Stockage d'objets | Activation HTTP du bucket |
| 4 | Alibaba Cloud | Stockage d'objets | ACL d'objet inscriptible |
| 5 | Alibaba Cloud | Stockage d'objets | ACL d'objet lisible |
| 6 | Alibaba Cloud | Stockage d'objets | Stratégie de bucket spéciale |
| 7 | Alibaba Cloud | Stockage d'objets | Accès public au bucket |
| 8 | Alibaba Cloud | Stockage d'objets | Accès public à l'objet |
| 9 | Alibaba Cloud | Stockage d'objets | Journalisation du bucket désactivée |
| 10 | Alibaba Cloud | Stockage d'objets | Stratégie de bucket lisible |
| 11 | Alibaba Cloud | Stockage d'objets | Parcours des objets du bucket |
| 12 | Alibaba Cloud | Stockage d'objets | Téléchargement de fichier sans restriction |
| 13 | Alibaba Cloud | Stockage d'objets | Chiffrement côté serveur sans KMS défini |
| 14 | Alibaba Cloud | Stockage d'objets | Chiffrement côté serveur sans BYOK |
| 15 | Alibaba Cloud | Service de calcul élastique | SSRF sur ECS |
| 16 | Alibaba Cloud | Service de calcul élastique | Disques non attachés non chiffrés |
| 17 | Alibaba Cloud | Service de calcul élastique | Disques de machine virtuelle non chiffrés |
| 18 | Tencent Cloud | Réseau | Groupe de sécurité VPC ouvert à tous les ports |
| 19 | Tencent Cloud | Réseau | Groupe de sécurité VPC ouvert aux ports communs |
| 20 | Tencent Cloud | Stockage d'objets | ACL de bucket inscriptible |
| 21 | Tencent Cloud | Stockage d'objets | ACL de bucket lisible |
| 22 | Tencent Cloud | Stockage d'objets | Accès public au bucket |
| 23 | Tencent Cloud | Stockage d'objets | Accès public à l'objet |
| 24 | Tencent Cloud | Stockage d'objets | Téléchargement de fichier sans restriction |
| 25 | Tencent Cloud | Stockage d'objets | Parcours des objets du bucket |
| 26 | Tencent Cloud | Stockage d'objets | Journalisation du bucket désactivée |
| 27 | Tencent Cloud | Stockage d'objets | Chiffrement côté serveur désactivé |
| 28 | Tencent Cloud | Service de calcul élastique | SSRF sur CVM |
| 29 | Tencent Cloud | Service de calcul élastique | Stockage CBS non utilisé |
| 30 | Tencent Cloud | Service de calcul élastique | Disques de machine virtuelle non chiffrés |
| 31 | Huawei Cloud | Réseau | Groupe de sécurité non sécurisé ECS |
| 32 | Huawei Cloud | Stockage d'objets | ACL d'objet inscriptible |
| 33 | Huawei Cloud | Stockage d'objets | Stratégie de bucket spéciale |
| 34 | Huawei Cloud | Stockage d'objets | Téléchargement de fichier sans restriction |
| 35 | Huawei Cloud | Stockage d'objets | Parcours des objets du bucket |
| 36 | Huawei Cloud | Stockage d'objets | Stratégie erronée entraînant des téléchargements de fichiers arbitraires |
| 37 | Huawei Cloud | Service de calcul élastique | SSRF sur ECS |
| 38 | Huawei Cloud | Service de base de données relationnelle | Environnement de vérification de base RDS MySQL |
| 39 | Amazon Web Services | Réseau | Groupe de sécurité VPC ouvert à tous les ports |
| 40 | Amazon Web Services | Réseau | Groupe de sécurité VPC ouvert aux ports communs |
| 41 | Amazon Web Services | Stockage d'objets | ACL d'objet inscriptible |
| 42 | Amazon Web Services | Stockage d'objets | ACL de bucket inscriptible |
| 43 | Amazon Web Services | Stockage d'objets | ACL de bucket lisible |
| 44 | Amazon Web Services | Stockage d'objets | Suppression MFA désactivée |
| 45 | Amazon Web Services | Stockage d'objets | Stratégie de bucket spéciale |
| 46 | Amazon Web Services | Stockage d'objets | Parcours des objets du bucket |
| 47 | Amazon Web Services | Stockage d'objets | Téléchargement de fichier sans restriction |
| 48 | Amazon Web Services | Stockage d'objets | Journalisation du bucket désactivée |
| 49 | Amazon Web Services | Stockage d'objets | Bucket autorisant l'accès HTTP |
| 50 | Amazon Web Services | Stockage d'objets | Chiffrement par défaut du bucket désactivé |
| 51 | Amazon Web Services | Service de calcul élastique | SSRF sur EC2 |
| 52 | Amazon Web Services | Service de calcul élastique | Prise de contrôle de la console |
| 53 | Amazon Web Services | Service de calcul élastique | Volumes EBS non utilisés |
| 54 | Amazon Web Services | Service de calcul élastique | Chiffrement des volumes EBS désactivé |
| 55 | Amazon Web Services | Service de calcul élastique | Instantanés de volumes EBS non chiffrés |
| 56 | Amazon Web Services | Gestion des identités et des accès | Escalade de privilèges IAM |
| 57 | Google Cloud Platform | Stockage d'objets | ACL d'objet inscriptible |
| 58 | Google Cloud Platform | Stockage d'objets | ACL de bucket inscriptible |
| 59 | Google Cloud Platform | Stockage d'objets | Parcours des objets du bucket |
| 60 | Google Cloud Platform | Stockage d'objets | Téléchargement de fichier sans restriction |
| 61 | Google Cloud Platform | Service de calcul élastique | Exécution de commande sur VM |
| 62 | Microsoft Azure | Stockage d'objets | Accès public au blob |
| 63 | Microsoft Azure | Stockage d'objets | Parcours des blobs du conteneur |
| 64 | Microsoft Azure | Service de calcul élastique | Exécution de commande sur VM |