
AWSGoat : Чрезвычайно уязвимая инфраструктура AWS

Компрометация облачной инфраструктуры организации — это как золотая жила для злоумышленников. И иногда злоумышленнику достаточно простой ошибки конфигурации или уязвимости в веб-приложениях, чтобы скомпрометировать всю инфраструктуру. Поскольку облако относительно новое, многие разработчики не до конца осознают ландшафт угроз и в итоге развертывают уязвимую облачную инфраструктуру.
AWSGoat — это инфраструктура на AWS, уязвимая по замыслу, включающая последние выпущенные риски безопасности веб-приложений из OWASP Top 10 (2021) и другие ошибки конфигурации на основе таких сервисов, как IAM, S3, API Gateway, Lambda, EC2 и ECS. AWSGoat имитирует реальную инфраструктуру, но с добавленными уязвимостями. Он включает множество путей повышения привилегий и ориентирован на подход «черного ящика».
AWSGoat использует IaC (Terraform) для развертывания уязвимой облачной инфраструктуры в учетной записи AWS пользователя. Это дает пользователю полный контроль над кодом, инфраструктурой и окружением. С помощью AWSGoat пользователь может изучать/практиковать:
Проект будет разделен на модули, и каждый модуль будет отдельным веб-приложением, использующим различные технологические стеки и практики разработки. Он будет использовать IaC через terraform и GitHub actions для упрощения процесса развертывания.
Представлено на
Проект по плану должен охватывать все значительные уязвимости, включая OWASP TOP 10 2021, и популярные ошибки конфигурации облака. В настоящее время проект содержит следующие уязвимости/ошибки конфигурации.
Чтобы упростить процесс развертывания, пользователю нужно всего лишь сделать форк этого репозитория, добавить свои учетные данные AWS в секреты GitHub и запустить действие Terraform Apply. Этот рабочий процесс развернет всю инфраструктуру и выведет URL размещенного приложения.
Вот шаги, которые нужно выполнить:
Шаг 1. Сделайте форк репозитория
Шаг 2. Настройте секреты GitHub Action:
AWS_ACCESS_KEY
AWS_SECRET_ACCESS_KEY
Шаг 3. На вкладке actions репозитория выберите модуль для развёртывания и запустите workflow Terraform Apply.
Шаг 4. Найдите URL приложения в разделе вывода Terraform.
Для ручной установки AWSGoat потребуется выполнить следующие шаги:
(Примечание: требуется машина с Linux и доступной оболочкой /bin/bash)
Шаг 1. Клонируйте репозиторий
git clone https://github.com/ine-labs/AWSGoat
Шаг 2. Настройте учётные данные пользователя AWS
aws configure
Шаг 3. Перейдите в каталог соответствующего модуля и используйте terraform для развёртывания AWSGoat
cd modules/module-<Number>
terraform init
terraform apply --auto-approve
Первый модуль представляет собой бессерверное блог-приложение, использующее AWS Lambda, S3, API Gateway и DynamoDB. Он содержит различные уязвимости веб-приложений и способствует эксплуатации неправильно настроенных ресурсов AWS.
Путь повышения привилегий:
Второй модуль представляет собой внутреннее приложение для расчёта зарплат отдела кадров, использующее инфраструктуру AWS ECS. Оно содержит различные уязвимости веб-приложений и способствует эксплуатации неправильно настроенных ресурсов AWS.
Путь повышения привилегий:
Рекомендуемый браузер: Google Chrome
Ресурсы, создаваемые при развёртывании AWSGoat, не повлекут никаких расходов, если учётная запись AWS находится в рамках бесплатного уровня/пробного периода. Однако после исчерпания/утраты права на бесплатный уровень/пробный период будут применяться следующие тарифы для региона US-East:
Модуль 1: $0.0125/час
Модуль 2: $0.0505/час
Jeswin Mathai, Chief Architect, Lab Platform, INE [email protected]
Nishant Sharma, Director, Lab Platform, INE [email protected]
Sanjeev Mahunta, Software Engineer (Cloud), INE [email protected]
Shantanu Kale, Cloud Developer, INE [email protected]
Govind Krishna Lal Balaji, Cloud Developer, INE [email protected]
Litesh Ghute, Senior Engineer, INE [email protected], LinkedIn
Наступательные руководства доступны в каталоге attack-manuals, а оборонительные руководства — в каталоге defence-manuals.
Видео по эксплуатации модуля 1: https://www.youtube.com/playlist?list=PLcIpBb4raSZEMosUmY8KpxPWtjKRMSmNx
Для получения дополнительной информации обратитесь к PDF-файлу "AWSGoat.pdf". Этот файл содержит слайды, использованные для презентаций.
Модуль 1: