AWS - ECR Enum

AWS - ECR Enum

Support HackTricks

ECR

Basic Information

Amazon Elastic Container Registry (Amazon ECR) एक managed container image registry service है। यह एक ऐसा वातावरण प्रदान करने के लिए डिज़ाइन किया गया है जहाँ ग्राहक अपने कंटेनर छवियों के साथ अच्छी तरह से ज्ञात इंटरफेस का उपयोग करके बातचीत कर सकते हैं। विशेष रूप से, Docker CLI या किसी भी पसंदीदा क्लाइंट का उपयोग किया जा सकता है, जो कंटेनर छवियों को पुश, पुल और प्रबंधित करने जैसी गतिविधियों को सक्षम बनाता है।

ECR 2 प्रकार की वस्तुओं से बना है: Registries और Repositories

Registries

हर AWS खाते में 2 रजिस्ट्रियाँ होती हैं: Private और Public

  1. Private Registries:

  • डिफ़ॉल्ट रूप से निजी: Amazon ECR निजी रजिस्ट्रियों में संग्रहीत कंटेनर छवियाँ केवल आपके AWS खाते के भीतर अधिकृत उपयोगकर्ताओं के लिए या उन लोगों के लिए जो अनुमति प्राप्त कर चुके हैं, सुलभ हैं।

  • एक निजी रिपॉजिटरी का URI इस प्रारूप का अनुसरण करता है <account_id>.dkr.ecr.<region>.amazonaws.com/<repo-name>

  • एक्सेस नियंत्रण: आप IAM नीतियों का उपयोग करके अपनी निजी कंटेनर छवियों तक एक्सेस नियंत्रित कर सकते हैं, और आप उपयोगकर्ताओं या भूमिकाओं के आधार पर बारीक अनुमति कॉन्फ़िगर कर सकते हैं।

  • AWS सेवाओं के साथ एकीकरण: Amazon ECR निजी रजिस्ट्रियाँ अन्य AWS सेवाओं के साथ आसानी से एकीकृत की जा सकती हैं, जैसे EKS, ECS...

  • अन्य निजी रजिस्ट्रियों के विकल्प:

  • टैग अपरिवर्तनीयता कॉलम इसकी स्थिति को सूचीबद्ध करता है, यदि टैग अपरिवर्तनीयता सक्षम है तो यह पूर्व-निर्धारित टैग के साथ छवि पुश को ओवरराइट करने से रोक देगा

  • एन्क्रिप्शन प्रकार कॉलम रिपॉजिटरी की एन्क्रिप्शन विशेषताओं को सूचीबद्ध करता है, यह डिफ़ॉल्ट एन्क्रिप्शन प्रकार जैसे AES-256 दिखाता है, या KMS सक्षम एन्क्रिप्शन है।

  • पुल थ्रू कैश कॉलम इसकी स्थिति को सूचीबद्ध करता है, यदि पुल थ्रू कैश स्थिति सक्रिय है तो यह आपकी निजी रिपॉजिटरी में एक बाहरी सार्वजनिक रिपॉजिटरी में रिपॉजिटरी को कैश करेगा

  • विशिष्ट IAM नीतियों को विभिन्न अनुमतियों को प्रदान करने के लिए कॉन्फ़िगर किया जा सकता है।

  • स्कैनिंग कॉन्फ़िगरेशन छवियों में कमजोरियों के लिए स्कैन करने की अनुमति देता है जो रिपॉजिटरी के अंदर संग्रहीत हैं।

  1. Public Registries:

  • सार्वजनिक पहुंच: ECR सार्वजनिक रजिस्ट्रियों में संग्रहीत कंटेनर छवियाँ बिना प्रमाणीकरण के इंटरनेट पर किसी के लिए भी सुलभ हैं।

  • एक सार्वजनिक रिपॉजिटरी का URI इस तरह है public.ecr.aws/<random>/<name>। हालांकि <random> भाग को व्यवस्थापक द्वारा याद रखने में आसान किसी अन्य स्ट्रिंग में बदला जा सकता है।

Repositories

ये छवियाँ हैं जो निजी रजिस्ट्रियों या सार्वजनिक में हैं।

ध्यान दें कि किसी रिपॉजिटरी में छवि अपलोड करने के लिए, ECR रिपॉजिटरी का नाम छवि के समान होना चाहिए

Registry & Repository Policies

Registries & repositories के पास नीतियाँ भी होती हैं जो अन्य प्रिंसिपल/खातों को अनुमतियाँ देने के लिए उपयोग की जा सकती हैं। उदाहरण के लिए, निम्नलिखित रिपॉजिटरी नीति छवि में आप देख सकते हैं कि कैसे संगठन के पूरे उपयोगकर्ता छवि तक पहुँच प्राप्त कर सकेंगे:

Enumeration

# Get repos
aws ecr describe-repositories
aws ecr describe-registry

# Get image metadata
aws ecr list-images --repository-name <repo_name>
aws ecr describe-images --repository-name <repo_name>
aws ecr describe-image-replication-status --repository-name <repo_name> --image-id <image_id>
aws ecr describe-image-scan-findings --repository-name <repo_name> --image-id <image_id>
aws ecr describe-pull-through-cache-rules --repository-name <repo_name> --image-id <image_id>

# Get public repositories
aws ecr-public describe-repositories

# Get policies
aws ecr get-registry-policy
aws ecr get-repository-policy --repository-name <repo_name>

अनधिकृत Enum

प्रिवेस्क

अगली पृष्ठ पर आप ECR अनुमतियों का दुरुपयोग करके विशेषाधिकार बढ़ाने के तरीके की जांच कर सकते हैं:

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

स्थिरता

संदर्भ

HackTricks का समर्थन करें

Last updated