AWS - ECS Enum

हैकट्रिक्स का समर्थन करें

ECS

मौलिक जानकारी

अमेज़न एलास्टिक कंटेनर सेवाएं या ECS एक प्लेटफ़ॉर्म प्रदान करता है जिसका उपयोग क्लाउड में कंटेनरीकृत एप्लिकेशन्स को होस्ट करने के लिए किया जा सकता है। ECS में दो डिप्लॉयमेंट विधियाँ हैं, EC2 इंस्टेंस टाइप और एक सर्वरलेस विकल्प, Fargate। सेवा क्लाउड में कंटेनर्स चलाना बहुत आसान और पेन फ्री बनाती है

ECS निम्नलिखित तीन निर्माण खंडों का उपयोग करके काम करता है: क्लस्टर्स, सेवाएं, और टास्क परिभाषाएं

  • क्लस्टर्स क्लाउड में चल रहे कंटेनरों के समूह होते हैं। पहले से ही उल्लिखित है कि कंटेनरों के लिए दो लॉन्च प्रकार हैं, EC2 और Fargate। AWS ने EC2 लॉन्च प्रकार को उन ग्राहकों के लिए "चलाने की अनुमति देते हैं जो अपने कंटेनरीकृत एप्लिकेशन्स को अमेज़न EC2 इंस्टेंस के एक क्लस्टर पर चला सकते हैं जिन्हें वे प्रबंधित करते हैं" के रूप में परिभाषित किया है। Fargate समान है और "आपको बैकएंड इंफ्रास्ट्रक्चर की प्रावधान और प्रबंधन की आवश्यकता के बिना अपने कंटेनरीकृत एप्लिकेशन्स को चलाने की अनुमति देता है" के रूप में परिभाषित किया गया है।

  • सेवाएं एक क्लस्टर के भीतर बनाई जाती हैं और टास्क्स को चलाने के लिए जिम्मेदार होती हैं। सेवा परिभाषा के भीतर आप चलाने वाले टास्क्स की संख्या, ऑटो स्केलिंग, क्षमता प्रदाता (Fargate/EC2/बाह्य), नेटवर्किंग सूचना जैसे VPC, सबनेट्स, और सुरक्षा समूहों को परिभाषित करते हैं।

  • यहाँ 2 प्रकार के एप्लिकेशन हैं:

  • सेवा: एक लंबे समय तक कंप्यूटिंग कार्य को संभालने वाले टास्क्स का समूह जो बंद किया और पुनः आरंभ किया जा सकता है। उदाहरण के लिए, एक वेब एप्लिकेशन।

  • टास्क: एक स्वतंत्र टास्क जो चलता है और समाप्त होता है। उदाहरण के लिए, एक बैच जॉब।

  • सेवा एप्लिकेशन्स के बीच, 2 प्रकार के सेवा स्केज्यूलर्स हैं:

  • रेप्लिका: रेप्लिका शेड्यूलिंग स्ट्रैटेजी आपके क्लस्टर के अंदर वांछित संख्या के टास्क्स को रखती है और बिछूए गए किसी भी कारण से टास्क बंद हो जाए, तो एक नया टास्क उसी या विभिन्न नोड में लॉन्च किया जाता है।

  • डेमन: उन आवश्यक आवश्यकताओं वाले प्रत्येक सक्रिय कंटेनर इंस्टेंस पर एक ही टास्क डिप्लॉय करता है। टास्क की एक वांछित संख्या, टास्क प्लेसमेंट स्ट्रैटेजी, या सेवा ऑटो स्केलिंग नीतियों का उपयोग करने की आवश्यकता नहीं है।

  • टास्क परिभाषाएं जिम्मेदार होती हैं कि कौन से कंटेनर चलेंगे और कंटेनर्स के साथ कॉन्फ़िगर किए जाने वाले विभिन्न पैरामीटर जैसे कि होस्ट के साथ पोर्ट मैपिंग्स, एनवायरनमेंट वेरिएबल्स, डॉकर एंट्रीपॉइंट...

  • संवेदनशील जानकारी के लिए एनवायरनमेंट वेरिएबल्स की जाँच करें!

टास्क परिभाषाओं में संवेदनशील डेटा

टास्क परिभाषाएं जिम्मेदार होती हैं कि 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

Privesc

निम्नलिखित पृष्ठ पर आप जांच सकते हैं कि ECS अनुमतियों का दुरुपयोग करके विशेषाधिकारों को उन्नत कैसे किया जा सकता है:

AWS - ECS Privesc

पोस्ट एक्सप्लोइटेशन

AWS - ECS Post Exploitation

स्थिरता

AWS - ECS Persistence
हैकट्रिक्स का समर्थन करें

Last updated