AWS - Identity Center & SSO 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)
शुरुआत में इस ब्लॉग पोस्ट में प्रस्तावित किया गया, यह संभव है कि एक लिंक को एक उपयोगकर्ता को AWS SSO का उपयोग करते हुए भेजा जाए, यदि उपयोगकर्ता स्वीकार करता है तो हमलावर को उपयोगकर्ता का अनुकरण करने के लिए एक टोकन प्राप्त होगा और वह सभी भूमिकाओं तक पहुँच प्राप्त कर सकेगा जिन तक उपयोगकर्ता पहुँच सकता है Identity Center में।
इस हमले को करने के लिए आवश्यकताएँ हैं:
पीड़ित को Identity Center का उपयोग करना होगा
हमलावर को पीड़ित द्वारा उपयोग किए जाने वाले उपडोमेन का पता होना चाहिए <victimsub>.awsapps.com/start
सिर्फ पिछले जानकारी के साथ, हमलावर उपयोगकर्ता को एक लिंक भेजने में सक्षम होगा जो यदि स्वीकृत किया जाता है तो हमलावर को AWS उपयोगकर्ता खाते पर पहुँच प्रदान करेगा।
उपडोमेन खोजना
हमलावर का पहला कदम यह पता लगाना है कि पीड़ित कंपनी अपने Identity Center में कौन सा उपडोमेन उपयोग कर रही है। यह OSINT या अनुमान + BF के माध्यम से किया जा सकता है क्योंकि अधिकांश कंपनियाँ यहाँ अपने नाम या उनके नाम का एक भिन्न रूप उपयोग कर रही होंगी।
इस जानकारी के साथ, यह संभव है कि उस क्षेत्र को प्राप्त किया जा सके जहाँ Identity Center को कॉन्फ़िगर किया गया था:
शिकार के लिए लिंक उत्पन्न करें और इसे भेजें
AWS SSO लॉगिन लिंक उत्पन्न करने के लिए निम्नलिखित कोड चलाएँ ताकि शिकारकर्ता प्रमाणीकरण कर सके। डेमो के लिए, इस कोड को एक पायथन कंसोल में चलाएँ और इसे बंद न करें क्योंकि बाद में आपको टोकन प्राप्त करने के लिए कुछ ऑब्जेक्ट्स की आवश्यकता होगी:
Send the generated link to the victim using you awesome social engineering skills!
पीड़ित के स्वीकार करने की प्रतीक्षा करें
यदि पीड़ित पहले से AWS में लॉग इन था तो उसे केवल अनुमतियाँ देने के लिए स्वीकार करना होगा, यदि वह नहीं था, तो उसे लॉग इन करना होगा और फिर अनुमतियाँ देने के लिए स्वीकार करना होगा। यहाँ आजकल प्रॉम्प्ट कैसा दिखता है:
SSO एक्सेस टोकन प्राप्त करें
यदि पीड़ित ने प्रॉम्प्ट को स्वीकार कर लिया, तो इस कोड को चलाएँ ताकि उपयोगकर्ता का अनुकरण करते हुए SSO टोकन उत्पन्न किया जा सके:
SSO एक्सेस टोकन 8 घंटे के लिए मान्य है।
उपयोगकर्ता का अनुकरण करें
यह जानकर मज़ा आता है कि पिछला हमला काम करता है भले ही "unphisable MFA" (webAuth) का उपयोग किया जा रहा हो। इसका कारण यह है कि पिछला कार्यप्रवाह कभी भी उपयोग किए गए OAuth डोमेन को नहीं छोड़ता। अन्य फ़िशिंग हमलों की तरह नहीं जहां उपयोगकर्ता को लॉगिन डोमेन को प्रतिस्थापित करना पड़ता है, इस मामले में डिवाइस कोड कार्यप्रवाह इस तरह से तैयार किया गया है कि कोड एक डिवाइस द्वारा जाना जाता है और उपयोगकर्ता एक अलग मशीन में भी लॉगिन कर सकता है। यदि प्रॉम्प्ट को स्वीकार किया जाता है, तो डिवाइस, केवल प्रारंभिक कोड को जानकर, उपयोगकर्ता के लिए क्रेडेंशियल्स पुनः प्राप्त करने में सक्षम होगा।
इस बारे में अधिक जानकारी के लिए इस पोस्ट को देखें।
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)