AWS - ECS Enum

Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

ECS

Osnovne informacije

Amazon Elastic Container Services ili ECS pruža platformu za hostovanje kontejnerizovanih aplikacija u oblaku. ECS ima dva metoda implementacije, tip instance EC2 i opciju bez poslužitelja, Fargate. Usluga olakšava pokretanje kontejnera u oblaku i bezbolno je.

ECS funkcioniše koristeći sledeće tri osnovna elementa: Klasteri, Servisi i Definicije zadataka.

  • Klasteri su grupe kontejnera koji se izvršavaju u oblaku. Kao što je već pomenuto, postoje dva tipa pokretanja kontejnera, EC2 i Fargate. AWS definiše tip pokretanja EC2 kao mogućnost da "pokrenete [svoje] kontejnerizovane aplikacije na klasteru instanci Amazon EC2 koje [vi] upravljate". Fargate je sličan i definiše se kao mogućnost da "pokrenete svoje kontejnerizovane aplikacije bez potrebe za obezbeđivanjem i upravljanjem infrastrukturom na pozadini".

  • Servisi se kreiraju unutar klastera i odgovorni su za izvršavanje zadataka. U okviru definicije servisa definišete broj zadataka za izvršavanje, automatsko skaliranje, pružatelja kapaciteta (Fargate/EC2/Spoljni), mrežne informacije kao što su VPC-ovi, podmreže i sigurnosne grupe.

  • Postoje 2 vrste aplikacija:

  • Servis: Grupa zadataka koji obavljaju dugotrajan računarski rad koji se može zaustaviti i ponovo pokrenuti. Na primer, veb aplikacija.

  • Zadatak: Samostalan zadatak koji se izvršava i završava. Na primer, posao u seriji.

  • Među aplikacijama servisa postoje 2 vrste planera servisa:

  • REPLIKA: Strategija planiranja replika postavlja i održava željeni broj zadataka u vašem klasteru. Ako se iz nekog razloga zadatak zaustavi, pokreće se novi na istom ili drugom čvoru.

  • DAEMON: Implementira tačno jedan zadatak na svakoj aktivnoj instanci kontejnera koja ima potrebne zahteve. Nije potrebno navesti željeni broj zadataka, strategiju smeštanja zadataka ili koristiti politike automatskog skaliranja servisa.

  • Definicije zadataka su odgovorne za definisanje kontejnera koji će se izvršavati i različitih parametara koji će biti konfigurisani sa kontejnerima, kao što su mapiranje porta sa domaćinom, env promenljive, Docker entrypoint...

  • Proverite env promenljive za osetljive informacije!

Osetljivi podaci u definicijama zadataka

Definicije zadataka su odgovorne za konfigurisanje stvarnih kontejnera koji će se izvršavati u ECS-u. Pošto definicije zadataka definišu način izvršavanja kontejnera, unutar njih se može pronaći mnoštvo informacija.

Pacu može nabrojati ECS (list-clusters, list-container-instances, list-services, list-task-definitions), takođe može izbaciti definicije zadataka.

Nabrojavanje

# 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>

Neautentifikovan pristup

AWS - ECS Unauthenticated Enum

Privesc

Na sledećoj stranici možete proveriti kako zloupotrebiti ECS dozvole da biste povećali privilegije:

AWS - ECS Privesc

Post eksploatacija

AWS - ECS Post Exploitation

Upornost

AWS - ECS Persistence
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!

Drugi načini podrške HackTricks-u:

Last updated