AWS - ECS Post Exploitation
ECS
अधिक जानकारी के लिए देखें:
pageAWS - ECS EnumHost IAM Roles
ECS में एक IAM रोल को टास्क को असाइन किया जा सकता है जो कंटेनर के अंदर चल रहा होता है। यदि टास्क EC2 इंस्टेंस के अंदर चलाया जाता है, तो EC2 इंस्टेंस के पास एक और IAM रोल होगा जो उससे जुड़ा होता है। इसका मतलब है कि यदि आप ECS इंस्टेंस को कम्प्रोमाइज करने में सफल होते हैं, तो आप ECR और EC2 इंस्टेंस से जुड़े IAM रोल प्राप्त कर सकते हैं। इन क्रेडेंशियल्स को प्राप्त करने के बारे में अधिक जानकारी के लिए देखें:
ध्यान दें कि यदि EC2 इंस्टेंस IMDSv2 को लागू कर रहा है, डॉक्स के अनुसार, PUT अनुरोध का प्रतिसाद में हॉप लिमिट 1 होगी, जिससे EC2 इंस्टेंस के अंदर के कंटेनर से EC2 मेटाडेटा तक पहुंचना असंभव हो जाएगा।
Privesc to node to steal other containers creds & secrets
इसके अलावा, EC2 डॉकर का उपयोग करके ECs टास्क्स चलाता है, इसलिए यदि आप नोड से बाहर निकल सकते हैं या डॉकर सॉकेट तक पहुंच सकते हैं, तो आप जांच सकते हैं कि कौन से अन्य कंटेनर्स चल रहे हैं, और यहां तक कि उनके अंदर जाकर उनके IAM रोल्स चुरा सकते हैं।
Making containers run in current host
इसके अतिरिक्त, EC2 इंस्टेंस रोल आमतौर पर क्लस्टर के अंदर नोड्स के रूप में उपयोग किए जा रहे EC2 इंस्टेंसेस के कंटेनर इंस्टेंस स्टेट को अपडेट करने की पर्याप्त अनुमतियां रखता है। एक हमलावर इंस्टेंस की स्थिति को DRAINING में बदल सकता है, फिर ECS उससे सभी टास्क्स को हटा देगा और जो REPLICA के रूप में चल रहे हैं वे एक अलग इंस्टेंस में चलाए जाएंगे, संभवतः हमलावर के इंस्टेंस के अंदर ताकि वह उनके IAM रोल्स चुरा सके और कंटेनर के अंदर से संवेदनशील जानकारी प्राप्त कर सके।
यही तकनीक क्लस्टर से EC2 इंस्टेंस को डीरजिस्टर करके भी की जा सकती है। यह संभवतः कम गुप्त हो सकता है लेकिन यह अन्य इंस्टेंसेज में टास्क्स को चलाने के लिए मजबूर करेगा:
अंतिम तकनीक जो कार्यों के पुन: निष्पादन को मजबूर करती है, वह है ECS को संकेत देना कि कार्य या कंटेनर रोक दिया गया था। इसे करने के लिए 3 संभावित APIs हैं:
ECR कंटेनरों से संवेदनशील जानकारी चुराएं
EC2 इंस्टेंस के पास संभवतः ecr:GetAuthorizationToken
अनुमति भी होगी जो इसे इमेजेस डाउनलोड करने की अनुमति देती है (आप उनमें संवेदनशील जानकारी की खोज कर सकते हैं)।
Last updated