Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
terragoat — Преднамеренно уязвимая инфраструктура Terraform для изучения обнаружения неверных конфигураций облака и практик DevSecOps в AWS, Azure и GCP. | Kitploit
Инструменты/GitHubGitHub/bridgecrewio/terragoat
Безопасность облачных средDevSecOpsНеправильная КонфигурацияОбучение и ОбразованиеЛаборатории и Практика
GitHubbridgecrewio/terragoat

terragoat

Преднамеренно уязвимая инфраструктура Terraform для изучения обнаружения неверных конфигураций облака и практик DevSecOps в AWS, Azure и GCP.

Репозиторий
1.3k5.8k463 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Сайт
Поделиться

TerraGoat — Уязвимая инфраструктура Terraform

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

TerraGoat — это репозиторий Terraform от Bridgecrew, созданный по принципу «Уязвимо по замыслу». Terragoat

TerraGoat — это репозиторий Terraform от Bridgecrew, созданный по принципу «Уязвимо по замыслу». TerraGoat — это учебный и тренировочный проект, демонстрирующий, как типичные ошибки конфигурации могут попасть в производственные облачные среды.

Содержание

  • Введение
  • Начало работы
    • AWS
    • Azure
    • GCP
  • Участие
  • Поддержка

Введение

TerraGoat был создан, чтобы позволить DevSecOps-специалистам спроектировать и внедрить устойчивую стратегию предотвращения неправильных конфигураций. Его можно использовать для тестирования фреймворка «политика как код», такого как Bridgecrew и Checkov, инлайн-линтеров, pre-commit хуков или других методов сканирования кода.

TerraGoat продолжает традицию существующих *Goat-проектов, предоставляющих базовую тренировочную площадку для практики внедрения лучших практик безопасной разработки для облачной инфраструктуры.

Важные замечания

  • Где получить помощь: Bridgecrew Community Slack

Прежде чем продолжить, обратите внимание на это предупреждение:

⚠️ TerraGoat создаёт намеренно уязвимые ресурсы AWS в вашем аккаунте. НЕ развёртывайте TerraGoat в производственной среде или рядом с любыми конфиденциальными ресурсами AWS.

Требования

  • Terraform 0.12
  • aws cli
  • azure cli

Чтобы предотвратить попадание уязвимой инфраструктуры в производство, см.: Bridgecrew и checkov — инструмент статического анализа с открытым исходным кодом для инфраструктуры как кода.

Начало работы

Настройка AWS

Установка (AWS)

Вы можете развернуть несколько стеков TerraGoat в одном аккаунте AWS, используя параметр TF_VAR_environment.

Создайте бэкенд S3 Bucket для хранения состояния 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" } } ] }'

#### Применить 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

Удалить TerraGoat (AWS)```bash

terraform destroy

#### Создание нескольких стеков TerraGoat AWS```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

Удаление нескольких стеков TerraGoat (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

#### Установка (Azure)

Вы можете развернуть несколько стеков TerraGoat в одной подписке Azure, используя параметр `TF_VAR_environment`.

#### Создание бэкенда учетной записи хранения Azure для хранения состояния 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

Применить 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

#### Удаление TerraGoat (Azure)```bash
terraform destroy

Настройка GCP

Установка (GCP)

Вы можете развернуть несколько стеков TerraGoat в одном проекте GCP, используя параметр TF_VAR_environment.

Создание GCS-бэкенда для хранения состояния Terraform

Скачать инструмент