AWS - Cognito Unauthenticated Enum
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Cognito एक AWS सेवा है जो डेवलपर्स को अपने ऐप उपयोगकर्ताओं को AWS सेवाओं तक पहुंच प्रदान करने की अनुमति देती है। डेवलपर्स प्रमाणित उपयोगकर्ताओं को अपने ऐप में IAM भूमिकाएँ प्रदान करेंगे (संभावित रूप से लोग केवल साइन अप कर सकेंगे) और वे अनप्रमाणित उपयोगकर्ताओं को भी IAM भूमिका प्रदान कर सकते हैं।
Cognito के बारे में बुनियादी जानकारी के लिए देखें:
Identity Pools अनप्रमाणित उपयोगकर्ताओं को IAM भूमिकाएँ प्रदान कर सकते हैं जो केवल Identity Pool ID को जानते हैं (जो कि खोजना काफी सामान्य है), और इस जानकारी के साथ एक हमलावर IAM भूमिका तक पहुँचने और इसका दुरुपयोग करने की कोशिश कर सकता है। इसके अलावा, IAM भूमिकाएँ प्रमाणित उपयोगकर्ताओं को भी सौंपे जा सकते हैं जो Identity Pool तक पहुँचते हैं। यदि एक हमलावर एक उपयोगकर्ता पंजीकृत कर सकता है या पहले से ही पहचान प्रदाता तक पहुँच रखता है जो पहचान पूल में उपयोग किया जाता है, तो वह IAM भूमिका तक पहुँच सकता है जो प्रमाणित उपयोगकर्ताओं को दी जा रही है और इसके विशेषाधिकारों का दुरुपयोग कर सकता है।
डिफ़ॉल्ट रूप से Cognito नए उपयोगकर्ता को पंजीकृत करने की अनुमति देता है। एक उपयोगकर्ता को पंजीकृत करने में सक्षम होना आपको नीचे की एप्लिकेशन या एक पहचान पूल के प्रमाणित IAM एक्सेस भूमिका तक पहुँच दे सकता है जो पहचान प्रदाता के रूप में Cognito User Pool को स्वीकार कर रहा है। यहाँ देखें कि कैसे करें.
Pacu, AWS शोषण ढांचा, अब "cognito__enum" और "cognito__attack" मॉड्यूल शामिल करता है जो एक खाते में सभी Cognito संपत्तियों की गणना को स्वचालित करता है और कमजोर कॉन्फ़िगरेशन, उपयोगकर्ता विशेषताओं का उपयोग करके पहुँच नियंत्रण, आदि को चिह्नित करता है, और उपयोगकर्ता निर्माण (MFA समर्थन सहित) और परिवर्तनीय कस्टम विशेषताओं, उपयोग योग्य पहचान पूल क्रेडेंशियल्स, पहचान टोकन में अनुमेय भूमिकाओं आदि के आधार पर विशेषाधिकार वृद्धि को भी स्वचालित करता है।
मॉड्यूल के कार्यों का विवरण ब्लॉग पोस्ट के भाग 2 में देखें। स्थापना निर्देशों के लिए मुख्य Pacu पृष्ठ देखें।
Sample cognito__attack
उपयोग एक दिए गए पहचान पूल और उपयोगकर्ता पूल क्लाइंट के खिलाफ उपयोगकर्ता निर्माण और सभी प्रिवेस्क वेक्टर का प्रयास करने के लिए:
सैंपल cognito__enum का उपयोग वर्तमान AWS खाते में दृश्य सभी उपयोगकर्ता पूल, उपयोगकर्ता पूल क्लाइंट, पहचान पूल, उपयोगकर्ता आदि को इकट्ठा करने के लिए:
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE) GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)