Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
terragoat — Infrastructure Terraform intentionnellement vulnérable pour apprendre la détection des mauvaises configurations cloud et les pratiques DevSecOps sur AWS, Azure et GCP. | Kitploit
Outils/GitHubGitHub/bridgecrewio/terragoat
Sécurité CloudDevSecOpsMauvaise ConfigurationApprentissage et ÉducationLabs et Pratique
GitHubbridgecrewio/terragoat

terragoat

Infrastructure Terraform intentionnellement vulnérable pour apprendre la détection des mauvaises configurations cloud et les pratiques DevSecOps sur AWS, Azure et GCP.

Voir le dépôt
1.3k5.8k46il y a 3 ansVérifié par Kitploit
Site web

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

TerraGoat - Infrastructure Terraform vulnérable

Maintained by Bridgecrew.io Infrastructure Tests CIS Azure CIS GCP CIS AWS PCI Terraform Version slack-community

TerraGoat est le dépôt Terraform « Vulnerable by Design » de Bridgecrew. Terragoat

TerraGoat est le dépôt Terraform « Vulnerable by Design » de Bridgecrew. TerraGoat est un projet d'apprentissage et de formation qui montre comment des erreurs de configuration courantes peuvent se retrouver dans des environnements cloud de production.

Table des matières

  • Introduction
  • Pour commencer
    • AWS
    • Azure
    • GCP
  • Contribuer
  • Assistance

Introduction

TerraGoat a été conçu pour permettre aux DevSecOps de concevoir et mettre en œuvre une stratégie durable de prévention des mauvaises configurations. Il peut être utilisé pour tester un framework policy-as-code comme Bridgecrew & Checkov, des inline-linters, des hooks de pre-commit ou d'autres méthodes d'analyse de code.

TerraGoat s'inscrit dans la tradition des projets *Goat existants qui fournissent un terrain d'entraînement de base pour pratiquer la mise en œuvre de bonnes pratiques de développement sécurisé pour l'infrastructure cloud.

Notes importantes

  • Où obtenir de l'aide : le Bridgecrew Community Slack

Avant de continuer, veuillez prendre note de cet avertissement :

⚠️ TerraGoat crée intentionnellement des ressources AWS vulnérables dans votre compte. NE PAS déployer TerraGoat dans un environnement de production ou à côté de ressources AWS sensibles.

Prérequis

  • Terraform 0.12
  • aws cli
  • azure cli

Pour empêcher que des infrastructures vulnérables n'arrivent en production, voir : Bridgecrew & checkov, l'outil open source d'analyse statique pour l'infrastructure en tant que code.

Pour commencer

Configuration AWS

Installation (AWS)

Vous pouvez déployer plusieurs stacks TerraGoat dans un seul compte AWS en utilisant le paramètre TF_VAR_environment.

Créer un backend de bucket S3 pour conserver l'état Terraform```bash

export TERRAGOAT_STATE_BUCKET="mydevsecops-bucket" export TF_VAR_company_name=acme export TF_VAR_environment=mydevsecops export TF_VAR_region="us-west-2"

aws s3api create-bucket --bucket $TERRAGOAT_STATE_BUCKET
--region $TF_VAR_region --create-bucket-configuration LocationConstraint=$TF_VAR_region

Enable versioning

aws s3api put-bucket-versioning --bucket $TERRAGOAT_STATE_BUCKET --versioning-configuration Status=Enabled

Enable encryption

aws s3api put-bucket-encryption --bucket $TERRAGOAT_STATE_BUCKET --server-side-encryption-configuration '{ "Rules": [ { "ApplyServerSideEncryptionByDefault": { "SSEAlgorithm": "aws:kms" } } ] }'

#### Appliquer TerraGoat (AWS)```bash
cd terraform/aws/
terraform init \
-backend-config="bucket=$TERRAGOAT_STATE_BUCKET" \
-backend-config="key=$TF_VAR_company_name-$TF_VAR_environment.tfstate" \
-backend-config="region=$TF_VAR_region"

terraform apply

Supprimer TerraGoat (AWS)```bash

terraform destroy

#### Création de plusieurs stacks AWS TerraGoat```bash
cd terraform/aws/
export TERRAGOAT_ENV=$TF_VAR_environment
export TERRAGOAT_STACKS_NUM=5
for i in $(seq 1 $TERRAGOAT_STACKS_NUM)
do
    export TF_VAR_environment=$TERRAGOAT_ENV$i
    terraform init \
    -backend-config="bucket=$TERRAGOAT_STATE_BUCKET" \
    -backend-config="key=$TF_VAR_company_name-$TF_VAR_environment.tfstate" \
    -backend-config="region=$TF_VAR_region"

    terraform apply -auto-approve
done

Supprimer plusieurs TerraGoat stacks (AWS)```bash

cd terraform/aws/ export TF_VAR_environment = $TERRAGOAT_ENV for i in $(seq 1 $TERRAGOAT_STACKS_NUM) do export TF_VAR_environment=$TERRAGOAT_ENV$i terraform init
-backend-config="bucket=$TERRAGOAT_STATE_BUCKET"
-backend-config="key=$TF_VAR_company_name-$TF_VAR_environment.tfstate"
-backend-config="region=$TF_VAR_region"

terraform destroy -auto-approve

done

### Configuration Azure

#### Installation (Azure)

Vous pouvez déployer plusieurs piles TerraGoat dans un seul abonnement Azure en utilisant le paramètre `TF_VAR_environment`.

#### Créer un backend de compte de stockage Azure pour conserver l'état Terraform```bash
export TERRAGOAT_RESOURCE_GROUP="TerraGoatRG"
export TERRAGOAT_STATE_STORAGE_ACCOUNT="mydevsecopssa"
export TERRAGOAT_STATE_CONTAINER="mydevsecops"
export TF_VAR_environment="dev"
export TF_VAR_region="westus"

# Create resource group
az group create --location $TF_VAR_region --name $TERRAGOAT_RESOURCE_GROUP

# Create storage account
az storage account create --name $TERRAGOAT_STATE_STORAGE_ACCOUNT --resource-group $TERRAGOAT_RESOURCE_GROUP --location $TF_VAR_region --sku Standard_LRS --kind StorageV2 --https-only true --encryption-services blob

# Get storage account key
ACCOUNT_KEY=$(az storage account keys list --resource-group $TERRAGOAT_RESOURCE_GROUP --account-name $TERRAGOAT_STATE_STORAGE_ACCOUNT --query [0].value -o tsv)

# Create blob container
az storage container create --name $TERRAGOAT_STATE_CONTAINER --account-name $TERRAGOAT_STATE_STORAGE_ACCOUNT --account-key $ACCOUNT_KEY

Appliquer TerraGoat (Azure)```bash

cd terraform/azure/ terraform init -reconfigure -backend-config="resource_group_name=$TERRAGOAT_RESOURCE_GROUP"
-backend-config "storage_account_name=$TERRAGOAT_STATE_STORAGE_ACCOUNT"
-backend-config="container_name=$TERRAGOAT_STATE_CONTAINER"
-backend-config "key=$TF_VAR_environment.terraform.tfstate"

terraform apply

#### Supprimer TerraGoat (Azure)```bash
terraform destroy

Configuration GCP

Installation (GCP)

Vous pouvez déployer plusieurs piles TerraGoat dans un seul projet GCP en utilisant le paramètre TF_VAR_environment.

Télécharger l’outil