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