AWS - Cognito Unauthenticated Enum

Support HackTricks

Unauthenticated Cognito

Cognito एक AWS सेवा है जो डेवलपर्स को अपने ऐप उपयोगकर्ताओं को AWS सेवाओं तक पहुंच प्रदान करने की अनुमति देती है। डेवलपर्स प्रमाणित उपयोगकर्ताओं को अपने ऐप में IAM भूमिकाएँ प्रदान करेंगे (संभवतः लोग केवल साइन अप कर सकेंगे) और वे अनप्रमाणित उपयोगकर्ताओं को भी IAM भूमिका प्रदान कर सकते हैं।

Cognito के बारे में बुनियादी जानकारी के लिए देखें:

AWS - Cognito Enum

Identity Pool ID

Identity Pools अनप्रमाणित उपयोगकर्ताओं को IAM भूमिकाएँ प्रदान कर सकते हैं जो केवल Identity Pool ID को जानते हैं (जो कि खोजना काफी सामान्य है), और इस जानकारी के साथ एक हमलावर IAM भूमिका तक पहुँचने और इसका दुरुपयोग करने की कोशिश कर सकता है। इसके अलावा, IAM भूमिकाएँ प्रमाणित उपयोगकर्ताओं को भी सौंपे जा सकते हैं जो Identity Pool तक पहुँचते हैं। यदि एक हमलावर एक उपयोगकर्ता पंजीकृत कर सकता है या पहले से ही Identity Pool में उपयोग किए जाने वाले पहचान प्रदाता तक पहुँच रखता है, तो वह प्रमाणित उपयोगकर्ताओं को दी गई IAM भूमिका तक पहुँच सकता है और इसके विशेषाधिकारों का दुरुपयोग कर सकता है।

यहाँ देखें कि कैसे करें.

User Pool ID

डिफ़ॉल्ट रूप से Cognito नए उपयोगकर्ता को पंजीकृत करने की अनुमति देता है। एक उपयोगकर्ता को पंजीकृत करने में सक्षम होना आपको नींव एप्लिकेशन या एक Identity Pool के प्रमाणित IAM एक्सेस भूमिका तक पहुँच दे सकता है जो Cognito User Pool को पहचान प्रदाता के रूप में स्वीकार कर रहा है। यहाँ देखें कि कैसे करें.

Pacu modules for pentesting and enumeration

Pacu, AWS शोषण ढांचा, अब "cognito__enum" और "cognito__attack" मॉड्यूल शामिल करता है जो एक खाते में सभी Cognito संपत्तियों की गणना को स्वचालित करता है और कमजोर कॉन्फ़िगरेशन, उपयोगकर्ता विशेषताओं का उपयोग जो पहुँच नियंत्रण के लिए हैं, आदि को चिह्नित करता है, और उपयोगकर्ता निर्माण (MFA समर्थन सहित) और परिवर्तनीय कस्टम विशेषताओं, उपयोग योग्य पहचान पूल क्रेडेंशियल्स, आईडी टोकन में अस्वीकार योग्य भूमिकाओं के आधार पर विशेषाधिकार वृद्धि को भी स्वचालित करता है।

मॉड्यूल के कार्यों का विवरण देखने के लिए ब्लॉग पोस्ट के भाग 2 को देखें। स्थापना निर्देशों के लिए मुख्य Pacu पृष्ठ देखें।

Usage

Sample 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
Support HackTricks

Last updated