AWS - ECS Enum
Last updated
Last updated
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
Amazon Elastic Container Services veya ECS, bulutta konteynerleştirilmiş uygulamaları barındırmak için bir platform sağlar. ECS'nin iki dağıtım yöntemi vardır: EC2 örnek türü ve sunucusuz seçenek, Fargate. Bu hizmet, bulutta konteyner çalıştırmayı çok kolay ve sorunsuz hale getirir.
ECS, aşağıdaki üç yapı taşını kullanarak çalışır: Küme, Hizmetler ve Görev Tanımları.
Kümeler, bulutta çalışan konteyner gruplarıdır. Daha önce belirtildiği gibi, konteynerler için iki başlatma türü vardır: EC2 ve Fargate. AWS, EC2 başlatma türünü, müşterilerin “kendi konteynerleştirilmiş uygulamalarını, yönetilen bir Amazon EC2 örnek kümesinde çalıştırmalarına” izin verdiği şekilde tanımlar. Fargate benzer bir şekilde tanımlanır ve “konteynerleştirilmiş uygulamalarınızı arka uç altyapısını sağlama ve yönetme ihtiyacı olmadan çalıştırmanıza izin verir” şeklindedir.
Hizmetler, bir küme içinde oluşturulur ve görevleri çalıştırmaktan sorumludur. Bir hizmet tanımı içinde çalıştırılacak görev sayısını, otomatik ölçeklendirmeyi, kapasite sağlayıcısını (Fargate/EC2/Dış), VPC'ler, alt ağlar ve güvenlik grupları gibi ağ bilgilerini tanımlarsınız.
2 tür uygulama vardır:
Hizmet: Durdurulup yeniden başlatılabilen uzun süreli bir hesaplama işini yöneten görevler grubudur. Örneğin, bir web uygulaması.
Görev: Çalışan ve sona eren bağımsız bir görevdir. Örneğin, bir toplu iş.
Hizmet uygulamaları arasında 2 tür hizmet zamanlayıcı vardır:
REPLICA: Replica zamanlama stratejisi, kümeniz genelinde istenen görev sayısını yerleştirir ve korur. Eğer bir görev herhangi bir nedenle kapatılırsa, aynı veya farklı bir düğümde yeni bir görev başlatılır.
DAEMON: Gerekli gereksinimlere sahip her aktif konteyner örneğinde tam olarak bir görev dağıtır. İstenen görev sayısını, görev yerleştirme stratejisini belirtmeye veya Hizmet Otomatik Ölçeklendirme politikalarını kullanmaya gerek yoktur.
Görev Tanımları, çalışacak konteynerleri tanımlamaktan ve konteynerlerle yapılandırılacak çeşitli parametrelerden sorumludur, örneğin port eşlemeleri, env değişkenleri, Docker giriş noktası...
Hassas bilgiler için env değişkenlerini kontrol edin!
Görev tanımları, ECS'de çalışacak gerçek konteynerleri yapılandırmaktan sorumludur. Görev tanımları, konteynerlerin nasıl çalışacağını tanımladığından, içinde çok sayıda bilgi bulunabilir.
Pacu, ECS'yi listeleyebilir (list-clusters, list-container-instances, list-services, list-task-definitions), ayrıca görev tanımlarını dökebilir.
Aşağıdaki sayfada ECS izinlerini kötüye kullanarak yetki yükseltmeyi kontrol edebilirsiniz:
AWS - ECS PrivescAWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)