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

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

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

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

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

Категории

Все категории
Loading categories
cloudfoxable — Создайте собственную намеренно уязвимую площадку для тестирования на проникновение в AWS | Kitploit
Инструменты/GitHubGitHub/bishopfox/cloudfoxable
Безопасность облачной инфраструктурыCTFТестирование на ПроникновениеБезопасность облачных средОбучение и ОбразованиеЛаборатории и Практика
GitHubbishopfox/cloudfoxable

cloudfoxable

Создайте собственную намеренно уязвимую площадку для тестирования на проникновение в AWS

Репозиторий
46852485 месяцев назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
Сайт
Поделиться
![cloudfoxable-single-flag](https://assets.kitploit.com/production/public/readmes/44613/3cc0a0883978ba15cd7e20bf9b00cfa8ac9d3eca38994fa193c8930e145f952c.png)

Начать взлом: [CloudFoxable](https://cloudfoxable.bishopfox.com)

Читайте блог для получения дополнительных сведений: [Представляем CloudFoxable: геймифицированная песочница для взлома облака](https://bishopfox.com/blog/cloudfoxable-gamified-cloud-hacking-sandbox)

# Предыстория

CloudFox помогает пентестерам и специалистам по безопасности находить эксплуатируемые пути атак в облачной инфраструктуре. Но что, если вы хотите находить и эксплуатировать сервисы, которых ещё нет в вашем текущем окружении? Что, если у вас нет доступа к корпоративной среде AWS?

Представляем CloudFoxable — намеренно уязвимую среду AWS, созданную специально для демонстрации возможностей CloudFox и помощи в более эффективном поиске скрытых путей атак. Черпая вдохновение из [CloudGoat](https://github.com/RhinoSecurityLabs/cloudgoat), [flaws.cloud](https://flaws.cloud/), [flaws2.cloud](https://flaws2.cloud/) и [Metasploitable 1-3](https://github.com/rapid7/metasploitable3), CloudFoxable предоставляет широкий набор флагов и путей атак в формате CTF.

Как и [CloudGoat](https://github.com/RhinoSecurityLabs/cloudgoat) и [IAM-Vulnerable](https://github.com/BishopFox/iam-vulnerable), CloudFoxable разворачивает намеренно уязвимые ресурсы AWS в управляемом пользователем аккаунте-песочнице, чтобы пользователи учились выявлять и эксплуатировать облачные уязвимости. Однако, как и в [flaws.cloud](https://flaws.cloud/), ваше взаимодействие в большей степени веб-ориентировано и сопровождается подсказками.

* Всего заданий:    18

# Настройка Terraform и базовое использование

CloudFoxable использует **Terraform** для развертывания и управления намеренно уязвимой инфраструктурой AWS. В этом разделе приведены минимально необходимые инструкции по установке Terraform, а также по развертыванию, изменению и удалению ресурсов CloudFoxable.

<details>
    <summary>Нажмите, чтобы развернуть</summary>
    
### Установка Terraform

Terraform должен быть установлен локально перед развертыванием CloudFoxable.

Следуйте официальному руководству по установке HashiCorp для вашей операционной системы:

https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli

Проверьте установку:

```bash
terraform version

```

При успешной установке будет выведена версия Terraform.

### Предварительные требования

Перед запуском Terraform:

* У вас должен быть доступ к AWS-аккаунту, которым вы управляете.
* Учетные данные AWS должны быть настроены локально (например, через `aws configure`, переменные окружения или предполагаемую роль).
* Вы должны ожидать, что Terraform будет создавать и уничтожать ресурсы AWS в этом аккаунте.

**Важно:** CloudFoxable развертывает намеренно уязвимую инфраструктуру.
Не развертывайте это в производственных, общих или корпоративных AWS-аккаунтах.

### Рабочий процесс Terraform

Все команды Terraform следует запускать из следующего каталога:

```bash
cd cloudfoxable/aws
```

#### Инициализация Terraform

Инициализируйте рабочий каталог и загрузите необходимые провайдеры:

```bash
terraform init
```

Это требуется один раз для каждого рабочего пространства (или при изменении конфигурации провайдера).

#### Предварительный просмотр изменений (необязательно)

Чтобы просмотреть, что Terraform создаст, изменит или уничтожит:

```bash
terraform plan
```

#### Развертывание CloudFoxable

Для развертывания включенных в данный момент заданий:

```bash
terraform apply
```

Введите `yes` при появлении запроса на подтверждение.

#### Уничтожение всех ресурсов (очистка)

Чтобы удалить все ресурсы, созданные CloudFoxable:

```bash
terraform destroy
```

Подтвердите, введя `yes` при появлении запроса.

### Часто используемые команды Terraform

| Команда             | Описание                            |
| ------------------- | ------------------------------------ |
| `terraform init`    | Инициализирует проект Terraform     |
| `terraform plan`    | Показывает предлагаемые изменения инфраструктуры |
| `terraform apply`   | Создает или обновляет ресурсы       |
| `terraform destroy` | Удаляет все развернутые ресурсы     |

</details>

# Модульный подход

Как и в IAM-Vulnerable, некоторые задания включены по умолчанию (те, которые почти не требуют затрат), а другие отключены по умолчанию (те, которые требуют затрат при развертывании). Таким образом, вы можете включать нужные модули по мере необходимости. Впрочем, механизм включения/отключения заданий немного отличается от IAM-Vulnerable.

На cloudfoxable.bishopfox.com каждое задание сообщит вам, нужно ли вносить какие-либо изменения в Terraform (то есть развертывать что-то) для выполнения задания. Для этого нужно отредактировать terraform.tfvars и при необходимости изменить флаг enabled с false на true.

Вот пример:

```
############################
# Enabled/Disabled Challenges
############################

# Always on (Low or No cost)
challenge_foo_enabled = true
challenge_bar_enabled = true
challenge_alice_enabled = true

# Enable as needed (These challenges incur cost)
challenge_bob_enabled = false
challenge_mallory_enabled = false
```

Чтобы включить задание mallory, просто обновите следующую строку:

```
challenge_mallory_enabled = true
```

После включения задания необходимо повторно запустить terraform apply:

```
terraform apply
```

Теперь вы развернули задание mallory.

**Очистка**

В любой момент, когда вы захотите удалить все ресурсы, созданные CloudFoxable, вы можете выполнить следующие команды:
1. `cd cloudfoxable/aws`
1. `terraform destroy`

# Сборка с помощью Docker

Если вы используете **Windows**, при развертывании некоторых заданий могут возникать проблемы из-за ограничений, связанных с конкретной платформой. Чтобы избежать этого, предоставляется Dockerfile, который помогает собрать и запустить приложение в единообразной среде на разных системах.

<details>
    <summary>Нажмите, чтобы развернуть</summary>

## Клонирование репозитория

Начните с клонирования репозитория на локальную машину:

```bash
git clone https://github.com/BishopFox/cloudfoxable.git
cd cloudfoxable
```

## Сборка Docker-образа

После клонирования репозитория соберите Docker-образ следующей командой. Это гарантирует, что вы используете свежую сборку без кэшированных слоев:

```bash
docker build --no-cache -t cloudfoxable .
```

### Запуск Docker в Windows с помощью PowerShell

Если вы работаете в Windows, используйте следующую команду PowerShell для запуска Docker-контейнера. Это позволит:
- Подключить ваш файл учетных данных AWS к контейнеру для сохранения данных.
- Подключить файл(ы) Terraform (state) к контейнеру для сохранения данных. Вы можете напрямую редактировать **terraform.tfvars** в контейнере с помощью **nano**, и изменения будут синхронизированы с вашим хостом через bind mount.
- Запустить интерактивную сессию, в которой вы сможете выполнять команды Terraform.

```pwsh
cd aws
docker run -it -v $env:USERPROFILE/.aws/credentials:/root/.aws/credentials -v ${PWD}:/cloudfoxable/aws cloudfoxable
```
</details>

# Хотите большего?

https://github.com/iknowjason/Awesome-CloudSec-Labs

# Участие в разработке

Если вы хотите добавить новое задание, вот шаги внутри CloudFoxable после того, как вы сделаете форк репозитория:

* `cp aws/challenges/1_challenge_template aws/challenges/challenge_name`
* Переименуйте папку шаблона задания и файл `challenge_name.tf` в имя вашего задания.
* Добавьте свой terraform-код.
* Создайте новую переменную в aws/variables.tf
  ```
  variable "challenge_name_enabled" {
  description = "Enable or disable challenge_name challenge (true = enabled, false = disabled)"
  type        = bool
  default     = false
  }
  ```
* Добавьте его в раздел «Enabled/Disabled Challenge» в `terraform.tfvars.example`. Укажите, должно ли оно быть включено по умолчанию (низкая/нулевая стоимость) или отключено по умолчанию (стоит $$)
  ```
  challenge_name_enabled = false
  ```
* Добавьте модуль в aws/main.tf
  ```
  module "challenge_challenge_name" {
    source = "./challenges/challenge-name"
    count = var.challenge_name_enabled ? 1 : 0
    aws_assume_role_arn = (var.aws_assume_role_arn != "" ? var.aws_assume_role_arn : data.aws_caller_identity.current.arn) 
    account_id = data.aws_caller_identity.current.account_id
    aws_local_profile = var.aws_local_profile
    user_ip = local.user_ip
    }
   ```
* Добавьте имя задания в локальную переменную `enabled_challenges`:
  ```
    var.challenge_name_enabled ?                   "name                      | $12/month    |" : ""
  ```
Скачать инструмент