AWS - Cognito Unauthenticated Enum
Reading time: 4 minutes
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।
Unauthenticated Cognito
Cognito एक AWS सेवा है जो डेवलपर्स को अपने ऐप उपयोगकर्ताओं को AWS सेवाओं तक पहुंच प्रदान करने की अनुमति देती है। डेवलपर्स प्रमाणित उपयोगकर्ताओं को अपने ऐप में IAM भूमिकाएँ प्रदान करेंगे (संभवतः लोग केवल साइन अप कर सकेंगे) और वे अनप्रमाणित उपयोगकर्ताओं को भी IAM भूमिका प्रदान कर सकते हैं।
Cognito के बारे में बुनियादी जानकारी के लिए देखें:
पहचान पूल आईडी
पहचान पूल अनप्रमाणित उपयोगकर्ताओं को IAM भूमिकाएँ प्रदान कर सकते हैं जो केवल पहचान पूल आईडी को जानते हैं (जो खोजना काफी सामान्य है), और इस जानकारी के साथ एक हमलावर IAM भूमिका तक पहुँचने और इसका दुरुपयोग करने की कोशिश कर सकता है।
इसके अलावा, IAM भूमिकाएँ उन प्रमाणित उपयोगकर्ताओं को भी सौंपे जा सकते हैं जो पहचान पूल तक पहुँचते हैं। यदि एक हमलावर एक उपयोगकर्ता को पंजीकृत कर सकता है या पहले से ही पहचान पूल में उपयोग किए जाने वाले पहचान प्रदाता तक पहुँच रखता है, तो आप प्रमाणित उपयोगकर्ताओं को दी गई IAM भूमिका तक पहुँच सकते हैं और इसके विशेषाधिकारों का दुरुपयोग कर सकते हैं।
उपयोगकर्ता पूल आईडी
डिफ़ॉल्ट रूप से Cognito नए उपयोगकर्ता को पंजीकृत करने की अनुमति देता है। एक उपयोगकर्ता को पंजीकृत करने में सक्षम होना आपको नींव एप्लिकेशन या एक पहचान पूल के प्रमाणित IAM एक्सेस भूमिका तक पहुँच दे सकता है जो पहचान प्रदाता के रूप में Cognito उपयोगकर्ता पूल को स्वीकार कर रहा है। यहाँ देखें कि ऐसा कैसे करें.
पैकू मॉड्यूल्स पेंटेस्टिंग और एन्यूमरेशन के लिए
Pacu, AWS शोषण ढांचा, अब "cognito__enum" और "cognito__attack" मॉड्यूल शामिल करता है जो एक खाते में सभी Cognito संपत्तियों की एन्यूमरेशन को स्वचालित करता है और कमजोर कॉन्फ़िगरेशन, पहुँच नियंत्रण के लिए उपयोगकर्ता विशेषताएँ, आदि को चिह्नित करता है, और उपयोगकर्ता निर्माण (MFA समर्थन सहित) और परिवर्तनीय कस्टम विशेषताओं, उपयोग योग्य पहचान पूल क्रेडेंशियल्स, आईडी टोकन में असुमेबल भूमिकाओं आदि के आधार पर विशेषाधिकार वृद्धि को भी स्वचालित करता है।
मॉड्यूल के कार्यों का विवरण देखने के लिए ब्लॉग पोस्ट के भाग 2 को देखें। स्थापना निर्देशों के लिए मुख्य Pacu पृष्ठ देखें।
उपयोग
एक दिए गए पहचान पूल और उपयोगकर्ता पूल क्लाइंट के खिलाफ उपयोगकर्ता निर्माण और सभी प्रिवेस्क वेक्टरों का प्रयास करने के लिए cognito__attack
का नमूना उपयोग:
Pacu (new:test) > run cognito__attack --username randomuser --email XX+sdfs2@gmail.com --identity_pools
us-east-2:a06XXXXX-c9XX-4aXX-9a33-9ceXXXXXXXXX --user_pool_clients
59f6tuhfXXXXXXXXXXXXXXXXXX@us-east-2_0aXXXXXXX
सैंपल cognito__enum का उपयोग वर्तमान AWS खाते में दृश्य सभी उपयोगकर्ता पूल, उपयोगकर्ता पूल क्लाइंट, पहचान पूल, उपयोगकर्ताओं आदि को इकट्ठा करने के लिए:
Pacu (new:test) > run cognito__enum
tip
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
Azure हैकिंग सीखें और अभ्यास करें:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या हमें Twitter 🐦 @hacktricks_live** पर फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें, PRs को HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में सबमिट करके।