Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
terragoat — Absichtlich anfällige Terraform-Infrastruktur zum Erlernen der Erkennung von Cloud-Fehlkonfigurationen und von DevSecOps-Praktiken in AWS, Azure und GCP. | Kitploit
Tools/GitHubGitHub/bridgecrewio/terragoat
Cloud-SicherheitDevSecOpsFehlkonfigurationLernen & BildungLabs & Praxis
GitHubbridgecrewio/terragoat

terragoat

Absichtlich anfällige Terraform-Infrastruktur zum Erlernen der Erkennung von Cloud-Fehlkonfigurationen und von DevSecOps-Praktiken in AWS, Azure und GCP.

Repository anzeigen
1.3k5.8k46vor 3 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Webseite
Teilen

TerraGoat – Verwundbare Terraform-Infrastruktur

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

TerraGoat ist Bridgecrews „Vulnerable by Design“ Terraform-Repository. Terragoat

TerraGoat ist Bridgecrews „Vulnerable by Design“ Terraform-Repository. TerraGoat ist ein Lern- und Trainingsprojekt, das zeigt, wie häufige Konfigurationsfehler den Weg in Produktions-Cloud-Umgebungen finden können.

Inhaltsverzeichnis

  • Einleitung
  • Erste Schritte
    • AWS
    • Azure
    • GCP
  • Mitwirken
  • Support

Einleitung

TerraGoat wurde entwickelt, um DevSecOps zu ermöglichen, eine nachhaltige Strategie zur Vermeidung von Fehlkonfigurationen zu entwerfen und umzusetzen. Es kann verwendet werden, um ein Policy-as-Code-Framework wie Bridgecrew & Checkov, Inline-Linter, Pre-Commit-Hooks oder andere Code-Scanning-Methoden zu testen.

TerraGoat folgt der Tradition bestehender *Goat-Projekte, die eine grundlegende Trainingsumgebung bieten, um die Umsetzung bewährter Praktiken für sichere Entwicklung in der Cloud-Infrastruktur zu üben.

Wichtige Hinweise

  • Wo Sie Hilfe bekommen: die Bridgecrew Community Slack

Bevor Sie fortfahren, beachten Sie bitte diese Warnung:

⚠️ TerraGoat erstellt absichtlich verwundbare AWS-Ressourcen in Ihrem Konto. Stellen Sie TerraGoat NICHT in einer Produktionsumgebung oder neben sensiblen AWS-Ressourcen bereit.

Voraussetzungen

  • Terraform 0.12
  • aws cli
  • azure cli

Um zu verhindern, dass verwundbare Infrastruktur in die Produktion gelangt, siehe: Bridgecrew & checkov, das Open-Source-Tool zur statischen Analyse für Infrastructure as Code.

Erste Schritte

AWS-Setup

Installation (AWS)

Sie können mehrere TerraGoat-Stacks in einem einzigen AWS-Konto bereitstellen, indem Sie den Parameter TF_VAR_environment verwenden.

Erstellen Sie einen S3-Bucket-Backend, um den Terraform-Status zu speichern```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" } } ] }'

#### TerraGoat (AWS) anwenden```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

Entfernen von TerraGoat (AWS)```bash

terraform destroy

#### Erstellen mehrerer TerraGoat AWS-Stacks```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

Löschen mehrerer 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

### Azure Einrichtung

#### Installation (Azure)

Sie können mehrere TerraGoat-Stacks in einem einzigen Azure-Abonnement mit dem Parameter `TF_VAR_environment` bereitstellen.

#### Erstellen Sie ein Azure Storage-Konto-Backend zur Aufbewahrung des Terraform-Status```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

TerraGoat (Azure) anwenden```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

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

GCP Setup

Installation (GCP)

Sie können mehrere TerraGoat-Stacks in einem einzigen GCP-Projekt bereitstellen, indem Sie den Parameter TF_VAR_environment verwenden.

Erstellen Sie ein GCS-Backend, um den Terraform-Status zu speichern

Tool herunterladen