AWS - ECS Enum
Reading time: 4 minutes
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.
ECS
Основна інформація
Amazon Elastic Container Services або ECS надає платформу для хостингу контейнеризованих додатків у хмарі. ECS має два методи розгортання: тип інстансу EC2 та безсерверний варіант, Fargate. Ця служба дозволяє дуже легко та безболісно запускати контейнери в хмарі.
ECS працює, використовуючи три основні компоненти: Кластери, Служби та Визначення завдань.
- Кластери — це групи контейнерів, які працюють у хмарі. Як вже згадувалося, існує два типи запуску контейнерів: EC2 та Fargate. AWS визначає тип запуску EC2 як можливість для клієнтів “запускати [свої] контейнеризовані додатки на кластері інстансів Amazon EC2, які [вони] керують”. Fargate подібний і визначається як “[дозволяючи] вам запускати ваші контейнеризовані додатки без необхідності забезпечувати та керувати бекенд-інфраструктурою”.
- Служби створюються всередині кластера і відповідають за виконання завдань. У визначенні служби ви визначаєте кількість завдань для виконання, автоматичне масштабування, постачальника потужностей (Fargate/EC2/External), мережеву інформацію, таку як VPC, підмережі та групи безпеки.
- Існує 2 типи додатків:
- Служба: Група завдань, що обробляє тривалу обчислювальну роботу, яку можна зупинити та перезапустити. Наприклад, веб-додаток.
- Завдання: Самостійне завдання, яке виконується та завершується. Наприклад, пакетна робота.
- Серед службових додатків є 2 типи планувальників служб:
- REPLICA: Стратегія планування реплік розміщує та підтримує бажану кількість завдань у вашому кластері. Якщо з якоїсь причини завдання зупиняється, нове запускається на тому ж або іншому вузлі.
- DAEMON: Розгортає точно одне завдання на кожному активному контейнерному інстансі, який має необхідні вимоги. Немає необхідності вказувати бажану кількість завдань, стратегію розміщення завдань або використовувати політики автоматичного масштабування служби.
- Визначення завдань відповідають за визначення того, які контейнери будуть запущені та різних параметрів, які будуть налаштовані з контейнерами, таких як відображення портів з хостом, змінні середовища, Docker точка входу...
- Перевірте змінні середовища на наявність чутливої інформації!
Чутливі дані у визначеннях завдань
Визначення завдань відповідають за налаштування фактичних контейнерів, які будуть запущені в ECS. Оскільки визначення завдань визначають, як будуть працювати контейнери, всередині можна знайти безліч інформації.
Pacu може перераховувати ECS (list-clusters, list-container-instances, list-services, list-task-definitions), він також може вивантажувати визначення завдань.
Перерахування
# Clusters info
aws ecs list-clusters
aws ecs describe-clusters --clusters <cluster>
# Container instances
## An Amazon ECS container instance is an Amazon EC2 instance that is running the Amazon ECS container agent and has been registered into an Amazon ECS cluster.
aws ecs list-container-instances --cluster <cluster>
aws ecs describe-container-instances --cluster <cluster> --container-instances <container_instance_arn>
# Services info
aws ecs list-services --cluster <cluster>
aws ecs describe-services --cluster <cluster> --services <services>
aws ecs describe-task-sets --cluster <cluster> --service <service>
# Task definitions
aws ecs list-task-definition-families
aws ecs list-task-definitions
aws ecs list-tasks --cluster <cluster>
aws ecs describe-tasks --cluster <cluster> --tasks <tasks>
## Look for env vars and secrets used from the task definition
aws ecs describe-task-definition --task-definition <TASK_NAME>:<VERSION>
Неавтентифікований доступ
AWS - ECS Unauthenticated Enum
Підвищення привілеїв
На наступній сторінці ви можете перевірити, як зловживати правами ECS для підвищення привілеїв:
Після експлуатації
Постійність
tip
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Вивчайте та практикуйте Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Підтримка HackTricks
- Перевірте плани підписки!
- Приєднуйтесь до 💬 групи Discord або групи Telegram або слідкуйте за нами в Twitter 🐦 @hacktricks_live.
- Діліться хакерськими трюками, надсилаючи PR до HackTricks та HackTricks Cloud репозиторіїв на GitHub.