
Автоматизированное развертывание инфраструктуры Red Team с использованием Docker
Ранний выпуск. Подписывайтесь на меня в Twitter, чтобы быть в курсе разработки Redcloud.
💁☁️🐚🌱
Быстрый старт - Архитектура - Варианты использования - Скриншоты
Redcloud — это мощный и удобный инструментарий для развертывания полнофункциональной инфраструктуры Red Team с использованием Docker. Используйте скорость облака для ваших инструментов. Развертывается за минуты. Используйте и управляйте им с помощью полированного веб-интерфейса.
Идеально подходит для тестов на проникновение, полигонов, red teaming и bug bounty!
Размещайте свою атакующую инфраструктуру самостоятельно без проблем, разверните свою собственную живую, масштабируемую и отказоустойчивую наступательную инфраструктуру за считанные минуты.
Следующая демонстрация показывает развертывание Redcloud через SSH, затем Metasploit. Затем мы смотрим на Traefik и живой том, подключенный к Metasploit. Наконец, мы проверяем, что база данных Metasploit работает через веб-терминал, удаляем контейнер и завершаем работу Redcloud.
Настройка:```bash
cat ~/.ssh/id_rsa.pub | ssh root@your-deploy-target-ip 'cat >> .ssh/authorized_keys'
eval (docker-machine env default)
python --version
Развертывание:```bash
> git clone https://github.com/khast3x/redcloud.git
> cd redcloud
> python redcloud.py
Redcloud использует PyYAML для вывода списка доступных шаблонов. По умолчанию он установлен в большинстве систем.
Если нет, просто выполните:```bash
pip install -r requirements.txt
Redcloud имеет 3 различных способа развертывания:
1. **Локально**
2. **Удаленно, через ssh**. Требуется, чтобы ваш открытый ключ находился в файле `authorized_keys` на целевой машине.
3. **Удаленно, с помощью docker-machine**. Выполните команду `eval (docker-machine env deploy_target)`, чтобы загрузить окружение вашего docker-machine, и запустите `redcloud.py`. Redcloud должен автоматически обнаружить ваш docker-machine и подсветить пункты меню, относящиеся к развертыванию через docker-machine.
___
<h4 align="center">
<b>Шаблоны</b>
<br>
<br>
</h4>
<p align="center">
<img src="https://assets.kitploit.com/production/public/readmes/345/e38f19fa9cc10216030f7856b99170a4ac7c35399c2dd9daf19156a6e9b75e46.png" width="540" title="Шаблоны Redcloud">
</p>
___
**Кратко,**
`redcloud.py` разворачивает стек [Portainer](https://www.portainer.io/), **предварительно загруженный множеством шаблонов инструментов для ваших наступательных операций**, на базе Docker. После развертывания управляйте Redcloud через [веб-интерфейс](#screenshots). Использует [Traefik](https://traefik.io/) в качестве обратного прокси. Легкое удаленное развертывание на целевом сервере с помощью системного `ssh` или `docker-machine`.
* :rocket: Хотели когда-нибудь поднять Kali в облаке всего за несколько кликов?
* :package: Иметь чистые изолированные среды между вашими инструментами, методами и этапами?
* :ambulance: Мониторить состояние ваших сканов и C2?
* :fire: Пропустить задачи системного администратора по настройке фишинговой кампании и начать взламывать быстрее?
* :smiling_imp: Любопытно, как бы вы построили *идеальную* атакующую инфраструктуру?
Используйте веб-интерфейс для мониторинга, управления и **взаимодействия с каждым контейнером**. Используйте быстрый веб-терминал так же, как ваш собственный. Создавайте тома, сети и проброс портов с помощью простого интерфейса Portainer.
Развертывайте и управляйте всеми вашими любимыми инструментами и методами с мощью интернета дата-центровского уровня :rocket:
___
*В следующем разделе мы более подробно рассмотрим концепции дизайна Redcloud. Вы можете начать работу, не углубляясь в детали.*
___
* :book: **Содержание**
- [Введение](#introduction)
- [Возможности](#features)
- [Быстрый старт](#quick-start)
- [Подробности](#details)
- [Архитектура Redcloud](#redcloud-architecture)
- [Процесс развертывания](#deployment-workflow)
- [Сети](#networks)
- [Тома](#volumes)
- [Доступ к контейнерам из терминала](#accessing-containers-from-the-terminal)
- [Доступ к файлам](#accessing-files)
- [SSL-сертификаты](#ssl-certificates)
- [Остановка Redcloud](#stopping-redcloud)
- [Шаблоны приложений Portainer](#portainer-app-templates)
- [Обратный прокси Traefik](#traefik-reverse-proxy)
- [Вопросы безопасности Redcloud](#redcloud-security-considerations)
- [Проверенные варианты развертывания](#tested-deployment-candidates)
- [Устранение неполадок](#troubleshooting)
- [Сценарии использования](#use-cases)
- [Скриншоты](#screenshots)
- [Руководство по участию](#contribution-guideline)
- [Хостинг Redcloud](#hosting-redcloud)
- [Вдохновение и благодарности](#inspirations--shout-outs)
___
## Подробности
### Архитектура Redcloud
* `redcloud.py`: Запускает/Останавливает веб-интерфейс и шаблоны приложений, используя Docker и Portainer.
* `portainer`: Веб-интерфейс Portainer.
* `traefik`: Контейнер обратного прокси Traefik для веб-интерфейса, контейнеров API и файлов. Некоторые шаблоны имеют предварительно настроенные маршруты для удобства. См. `templates.yml`.
* `templates`: Контейнер `http.server` на Python3, который обслуживает шаблоны приложений. Находится во "внутренней" сети.
* `cert_gen`: Контейнер [omgwtfssl](https://github.com/paulczar/omgwtfssl), который генерирует SSL-сертификаты с использованием общепринятых лучших практик.
* https://your-server-ip/portainer: Веб-интерфейс Redcloud после развертывания.
* https://your-server-ip/files: Том `redcloud_files` Redcloud. Вы также можете получить доступ к содержимому контейнера `redcloud_log`, защищенному тем же `.htpasswd`, что и Traefik. Учетные данные по умолчанию: `admin:Redcloud`
* https://your-server-ip/api: Страница мониторинга состояния обратного прокси Traefik. Показывает статистику в реальном времени о маршрутах, бэкендах, кодах возврата. Также будет отображать данные обратного вызова имплантов, если настроено через Traefik.
### Процесс развертывания